IModel 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
實體圖形、實體之間的關聯性,以及它們如何對應至資料庫的中繼資料。 模型通常是藉由覆 OnModelCreating(ModelBuilder) 寫衍生 DbContext 上的 方法所建立。
public interface IModel : Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable
public interface IModel : Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable, Microsoft.EntityFrameworkCore.Metadata.IReadOnlyModel
type IModel = interface
interface IAnnotatable
type IModel = interface
interface IReadOnlyModel
interface IReadOnlyAnnotatable
interface IAnnotatable
Public Interface IModel
Implements IAnnotatable
Public Interface IModel
Implements IAnnotatable, IReadOnlyModel
- 衍生
- 實作
備註
服務存留期為 Scoped 。 這表示每個 DbContext 實例都會使用此服務自己的實例。 實作可能相依于任何存留期註冊的其他服務。 實作不需要安全線程。
如需詳細資訊和範例,請參閱 模型化實體類型和關聯 性。
屬性
Item[String] |
取得具有指定名稱的注釋值,如果不存在,則傳 |
ModelDependencies |
執行時間服務相依性。 |
ModelId |
這是支援 Entity Framework Core 基礎結構的內部 API,不受與公用 API 相同的相容性標準。 它可能會在任何版本中變更或移除,而不需任何通知。 您應該只在程式碼中直接使用它,並特別小心,並知道這麼做可能會導致應用程式在更新至新的 Entity Framework Core 版本時失敗。 (繼承來源 IReadOnlyModel) |
方法
AddRuntimeAnnotation(String, Object) |
將執行時間批註加入至這個物件。 如果具有指定名稱的注釋已經存在,則會擲回 。 (繼承來源 IAnnotatable) |
AnnotationsToDebugString(Int32) |
取得 物件上宣告之所有批註的偵錯字串。 (繼承來源 IReadOnlyAnnotatable) |
FindAnnotation(String) |
取得具有指定名稱的注釋,如果不存在,則傳 |
FindEntityType(String) |
取得具有指定名稱的實體。 |
FindEntityType(String, String, IEntityType) |
取得指定名稱的實體類型,定義導覽名稱和定義實體類型。 如果找不到相符的實體類型,則傳 |
FindEntityType(String, String, IReadOnlyEntityType) |
取得指定基底名稱的實體類型,定義導覽名稱和定義實體類型。 如果找不到相符的實體類型,則傳 |
FindEntityType(Type) |
取得對應指定實體類別的實體。 |
FindEntityType(Type, String, IEntityType) |
取得指定名稱的實體類型,定義導覽名稱和定義實體類型。 如果找不到相符的實體類型,則傳 |
FindEntityType(Type, String, IReadOnlyEntityType) |
取得指定型別的實體類型,定義導覽名稱和定義實體類型。 如果找不到相符的實體類型,則傳 |
FindEntityTypes(Type) |
取得符合指定型別的實體類型。 |
FindLeastDerivedEntityTypes(Type, Func<IReadOnlyEntityType,Boolean>) |
傳回對應至指定中最小衍生型別的實體型別。 |
FindRuntimeAnnotation(String) |
取得具有指定名稱的執行時間批註,如果不存在,則傳 |
FindRuntimeAnnotationValue(String) |
取得具有指定名稱的執行時間批註值,如果不存在,則傳 |
FindRuntimeEntityType(Type) |
取得對應指定實體類別的實體,其中 類別可能是衍生自實際實體類型的 Proxy。 |
FindTypeMappingConfiguration(Type) |
尋找指定純量 Type 的預先慣例組態。 |
GetAnnotation(String) |
取得具有指定名稱的注釋,如果不存在,則會擲回。 (繼承來源 IReadOnlyAnnotatable) |
GetAnnotations() |
取得目前 物件上的所有批註。 (繼承來源 IReadOnlyAnnotatable) |
GetChangeTrackingStrategy() |
取得模型中實體所使用的預設變更追蹤策略。 此策略指出內容如何偵測實體類型實例的屬性變更。 (繼承來源 IReadOnlyModel) |
GetEntityTypes() |
取得模型中定義的所有實體類型。 |
GetModelDependencies() |
取得執行時間服務相依性。 |
GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg) |
取得具有指定名稱的執行時間注釋值,如果不存在,請加以新增。 (繼承來源 IAnnotatable) |
GetProductVersion() |
取得用來建置此模型的 EF Core 元件版本。 (繼承來源 IReadOnlyModel) |
GetPropertyAccessMode() |
PropertyAccessMode取得用於這個模型中實體類型屬性的 。 (繼承來源 IReadOnlyModel) |
GetRuntimeAnnotations() |
取得目前 物件上的所有執行時間批註。 (繼承來源 IAnnotatable) |
GetTypeMappingConfigurations() |
取得所有預先慣例組態。 |
IsIndexerMethod(MethodInfo) |
取得值,指出指定的 MethodInfo 是否表示索引子存取。 |
IsShared(Type) |
取得值,指出模型中的共用類型實體是否使用 CLR 類型。 (繼承來源 IReadOnlyModel) |
RemoveRuntimeAnnotation(String) |
從這個 物件中移除指定的執行時間批註。 (繼承來源 IAnnotatable) |
SetRuntimeAnnotation(String, Object) |
設定儲存在指定索引鍵下的執行時間批註。 如果具有指定名稱的注釋已經存在,則覆寫現有的注釋。 (繼承來源 IAnnotatable) |
ToDebugString(MetadataDebugStringOptions, Int32) |
建立人類可讀取的指定中繼資料標記法。 警告:請勿依賴傳回字串的格式。 它是專為偵錯而設計,而且可能會在發行之間任意變更。 (繼承來源 IReadOnlyModel) |