Поделиться через


RelationalTypeMappingSource Класс

Определение

Базовый класс для источника сопоставления реляционных типов. Реляционные поставщики должны быть производными от этого класса и переопределять Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingSource.FindMapping(Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingInfo@)

Этот тип обычно используется поставщиками баз данных (и другими расширениями). Как правило, он не используется в коде приложения.

public abstract class RelationalTypeMappingSource : Microsoft.EntityFrameworkCore.Storage.TypeMappingSourceBase, Microsoft.EntityFrameworkCore.Storage.IRelationalTypeMappingSource
type RelationalTypeMappingSource = class
    inherit TypeMappingSourceBase
    interface IRelationalTypeMappingSource
    interface ITypeMappingSource
Public MustInherit Class RelationalTypeMappingSource
Inherits TypeMappingSourceBase
Implements IRelationalTypeMappingSource
Наследование
RelationalTypeMappingSource
Реализации

Комментарии

Время существования службы — Singleton. Это означает, что один экземпляр используется многими DbContext экземплярами. Реализация должна быть потокобезопасной. Эта служба не может зависеть от служб, зарегистрированных как Scoped.

Дополнительные сведения и примеры см. в статье Реализация поставщиков и расширений баз данных .

Конструкторы

RelationalTypeMappingSource(TypeMappingSourceDependencies, RelationalTypeMappingSourceDependencies)

Инициализирует новый экземпляр этого класса.

Свойства

Dependencies

Зависимости для этой службы.

(Унаследовано от TypeMappingSourceBase)
RelationalDependencies

Зависимости от реляционного поставщика для этой службы.

Методы

FindCollectionMapping(RelationalTypeMappingInfo, Type, Type, CoreTypeMapping)

Это внутренний API, который поддерживает инфраструктуру Entity Framework Core и не подчиняется тем же стандартам совместимости, что и общедоступные API. Он может быть изменен или удален без уведомления в любом выпуске. Следует использовать его только непосредственно в коде с особой осторожностью и зная, что это может привести к сбоям приложений при обновлении до нового выпуска Entity Framework Core.

FindMapping(IElementType)

Находит сопоставление типов для заданного IElementTypeобъекта .

FindMapping(IElementType)

Находит сопоставление типов для заданного IElementTypeобъекта .

(Унаследовано от TypeMappingSourceBase)
FindMapping(IProperty)

Находит сопоставление типов для заданного IPropertyобъекта .

FindMapping(MemberInfo)

Находит сопоставление типов для заданного MemberInfo объекта , представляющего поле или свойство типа CLR.

FindMapping(RelationalTypeMappingInfo)

Переопределяется поставщиками реляционных баз данных для поиска сопоставления типов для заданной информации.

FindMapping(String)

Находит сопоставление типов для заданного имени типа базы данных.

FindMapping(Type)

Находит сопоставление типов для заданного Typeобъекта .

FindMapping(Type, IModel)

Находит сопоставление типов для заданного Typeобъекта с учетом конфигурации, предшествующей соглашению, в учетной записи.

FindMapping(Type, IModel)

Находит сопоставление типов для заданного Typeобъекта с учетом конфигурации, предшествующей соглашению, в учетной записи.

(Унаследовано от TypeMappingSourceBase)
FindMapping(Type, IModel, CoreTypeMapping)

Находит сопоставление типов для заданного Typeобъекта с учетом конфигурации, предшествующей соглашению, в учетной записи.

FindMapping(Type, IModel, CoreTypeMapping)

Находит сопоставление типов для заданного Typeобъекта с учетом конфигурации, предшествующей соглашению, в учетной записи.

(Унаследовано от TypeMappingSourceBase)
FindMapping(Type, String, Boolean, Nullable<Boolean>, Nullable<Int32>, Nullable<Boolean>, Nullable<Boolean>, Nullable<Int32>, Nullable<Int32>)

Находит сопоставление типов для заданного Type и дополнительных аспектов.

FindMapping(TypeMappingInfo)

Вместо этого вызовите Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingSource.FindMapping(Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingInfo@)

FindMappingWithConversion(RelationalTypeMappingInfo, IReadOnlyList<IProperty>)

Этот API поддерживает инфраструктуру Entity Framework Core и не предназначен для использования непосредственно из кода. В будущих выпусках этот API может быть изменен или удален.

ParseStoreTypeName(String, Nullable<Boolean>, Nullable<Int32>, Nullable<Int32>, Nullable<Int32>)

Анализирует имя типа хранилища, зависят от поставщика, извлекая стандартные аспекты (например, размер, точность) и возвращает имя базового типа хранилища (без аспектов).

TryFindJsonCollectionMapping(TypeMappingInfo, Type, Type, CoreTypeMapping, ValueComparer, JsonValueReaderWriter)

Пытается найти сопоставление типов на основе JSON для коллекции примитивных типов.

(Унаследовано от TypeMappingSourceBase)
ValidateMapping(CoreTypeMapping, IProperty)

Вызывается после обнаружения сопоставления, чтобы его можно было проверить для заданного свойства.

(Унаследовано от TypeMappingSourceBase)

Явные реализации интерфейса

IRelationalTypeMappingSource.FindMapping(IProperty)

Находит сопоставление типов для заданного IPropertyобъекта .

IRelationalTypeMappingSource.FindMapping(MemberInfo)

Находит сопоставление типов для заданного MemberInfo объекта , представляющего поле или свойство типа CLR.

IRelationalTypeMappingSource.FindMapping(Type)

Находит сопоставление типов для заданного Typeобъекта .

IRelationalTypeMappingSource.FindMapping(Type, IModel)

Находит сопоставление типов для заданного Typeобъекта с учетом конфигурации, предшествующей соглашению, в учетной записи.

Методы расширения

GetMapping(IRelationalTypeMappingSource, IProperty)

Возвращает тип реляционной базы данных для заданного свойства, вызывая исключение, если сопоставление не найдено.

GetMapping(IRelationalTypeMappingSource, String)

Возвращает сопоставление, представляющее заданный тип базы данных, вызывая исключение, если сопоставление не найдено.

GetMapping(IRelationalTypeMappingSource, Type)

Возвращает тип реляционной базы данных для заданного типа .NET, вызывая исключение, если сопоставление не найдено.

GetMapping(IRelationalTypeMappingSource, Type, IModel)

Возвращает тип реляционной базы данных для заданного типа .NET, вызывая исключение, если сопоставление не найдено.

GetMappingForValue(IRelationalTypeMappingSource, Object)

Возвращает тип реляционной базы данных для заданного объекта, вызывая исключение, если сопоставление не найдено.

GetMappingForValue(IRelationalTypeMappingSource, Object, IModel)

Возвращает тип реляционной базы данных для заданного объекта, вызывая исключение, если сопоставление не найдено.

Применяется к