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
- Наследование
- Реализации
Комментарии
Время существования службы — 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) |
Возвращает тип реляционной базы данных для заданного объекта, вызывая исключение, если сопоставление не найдено. |
Применяется к
Entity Framework
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по