Share via


RuntimeModel クラス

定義

エンティティの形状、エンティティ間のリレーションシップ、およびエンティティがデータベースにマップされる方法に関するメタデータ。 モデルは、通常、派生 の メソッドを OnModelCreating(ModelBuilder) オーバーライドすることによって作成されます DbContext

public class RuntimeModel : Microsoft.EntityFrameworkCore.Infrastructure.AnnotatableBase, Microsoft.EntityFrameworkCore.Metadata.Internal.IRuntimeModel
type RuntimeModel = class
    inherit AnnotatableBase
    interface IRuntimeModel
    interface IModel
    interface IReadOnlyModel
    interface IReadOnlyAnnotatable
    interface IAnnotatable
Public Class RuntimeModel
Inherits AnnotatableBase
Implements IRuntimeModel
継承
RuntimeModel
実装
IAnnotatable IReadOnlyAnnotatable IModel Microsoft.EntityFrameworkCore.Metadata.Internal.IRuntimeModel IReadOnlyModel

注釈

これは、構築されたモデルから構築された軽量の実装であり、デザイン時に使用することを意図したものではありません。

サービスの有効期間は です Scoped。 これは、各 DbContext インスタンスがこのサービスの独自のインスタンスを使用することを意味します。 この実装は、任意の有効期間で登録されている他のサービスに依存する場合があります。 実装はスレッド セーフである必要はありません。

詳細と例については、「 エンティティ型とリレーションシップのモデル 化」を参照してください。

コンストラクター

RuntimeModel()

エンティティの形状、エンティティ間のリレーションシップ、およびエンティティがデータベースにマップされる方法に関するメタデータ。 モデルは、通常、派生 の メソッドを OnModelCreating(ModelBuilder) オーバーライドすることによって作成されます DbContext

プロパティ

DebugView

これは Entity Framework Core インフラストラクチャをサポートする内部 API であり、パブリック API と同じ互換性標準の対象ではありません。 いかなるリリースでも予告なく変更または削除される場合があります。 コードで直接使用する場合は、細心の注意を払う必要があります。これを行うと、新しい Entity Framework Core リリースに更新するとアプリケーションエラーが発生する可能性があることを認識してください。

IsReadOnly

現在のオブジェクトが読み取り専用かどうかを示します。

(継承元 AnnotatableBase)
Item[String]

指定された名前の値注釈を取得し、存在しない場合は を null 返します。

(継承元 AnnotatableBase)
ModelId

これは Entity Framework Core インフラストラクチャをサポートする内部 API であり、パブリック API と同じ互換性標準の対象ではありません。 これは、いかなるリリースでも予告なしに変更または削除される可能性があります。 コード内でのみ直接使用する必要があります。これを行うと、新しい Entity Framework Core リリースに更新するときにアプリケーションエラーが発生する可能性があることを認識してください。

メソッド

AddAnnotation(String, Annotation)

このオブジェクトに注釈を追加します。 指定した名前の注釈が既に存在する場合は をスローします。

(継承元 AnnotatableBase)
AddAnnotation(String, Object)

このオブジェクトに注釈を追加します。 指定した名前の注釈が既に存在する場合は をスローします。

(継承元 AnnotatableBase)
AddAnnotations(IEnumerable<IAnnotation>)

このオブジェクトに注釈を追加します。

(継承元 AnnotatableBase)
AddAnnotations(IReadOnlyDictionary<String,Object>)

このオブジェクトに注釈を追加します。

(継承元 AnnotatableBase)
AddEntityType(String, Type, RuntimeEntityType, Boolean, String, ChangeTrackingStrategy, PropertyInfo, Boolean)

モデルへのナビゲーションを定義するエンティティ型を追加します。

AddEntityType(String, Type, RuntimeEntityType, Boolean, String, ChangeTrackingStrategy, PropertyInfo, Boolean, Object)

モデルへのナビゲーションを定義するエンティティ型を追加します。

AddRuntimeAnnotation(String, Annotation)

このオブジェクトにランタイム注釈を追加します。 指定した名前の注釈が既に存在する場合は をスローします。

(継承元 AnnotatableBase)
AddRuntimeAnnotation(String, Object)

このオブジェクトにランタイム注釈を追加します。 指定した名前の注釈が既に存在する場合は をスローします。

(継承元 AnnotatableBase)
AddRuntimeAnnotations(IEnumerable<Annotation>)

このオブジェクトにランタイム注釈を追加します。

(継承元 AnnotatableBase)
AddRuntimeAnnotations(IReadOnlyDictionary<String,Object>)

このオブジェクトにランタイム注釈を追加します。

(継承元 AnnotatableBase)
AddTypeMappingConfiguration(Type, Nullable<Int32>, Nullable<Boolean>, Nullable<Int32>, Nullable<Int32>, Type, ValueConverter)

スカラー型の構成を追加します。

CreateAnnotation(String, Object)

新しい注釈を作成します。

(継承元 AnnotatableBase)
CreateRuntimeAnnotation(String, Object)

新しいランタイム注釈を作成します。

(継承元 AnnotatableBase)
EnsureMutable()

モデルが読み取り専用の場合は をスローします。

(継承元 AnnotatableBase)
EnsureReadOnly()

モデルが読み取り専用でない場合は をスローします。

(継承元 AnnotatableBase)
FindAdHocEntityType(Type)

指定した名前のエンティティ型を取得します。 指定した名前の null エンティティ型がアドホック型としてマップされていない場合は を返します。

FindAnnotation(String)

指定された名前の注釈を取得し、存在しない場合は を null 返します。

(継承元 AnnotatableBase)
FindEntityType(String)

指定した名前のエンティティ型を取得します。 指定された名前の null エンティティ型が見つからないか、指定された CLR 型が共有型エンティティ型で使用されているか、エンティティ型に定義ナビゲーションがある場合は を返します。

FindRuntimeAnnotation(String)

指定された名前のランタイム注釈を取得し、存在しない場合は を null 返します。

(継承元 AnnotatableBase)
GetAdHocEntityTypes()

モデルで定義されているすべてのアドホック エンティティ型を取得します。

GetAnnotation(String)

指定された名前の注釈を取得し、存在しない場合は をスローします。

(継承元 AnnotatableBase)
GetAnnotations()

現在のオブジェクトのすべての注釈を取得します。

(継承元 AnnotatableBase)
GetOrAddAdHocEntityType(RuntimeEntityType)

アドホック エンティティ型をモデルに追加します。

GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg)

指定された名前を持つランタイム注釈の値を取得し、存在しない場合は追加します。

(継承元 AnnotatableBase)
GetRuntimeAnnotations()

現在のオブジェクトのすべてのランタイム注釈を取得します。

(継承元 AnnotatableBase)
OnAnnotationSet(String, Annotation, Annotation)

注釈が設定または削除されたときに呼び出されます。

(継承元 AnnotatableBase)
RemoveAnnotation(String)

このオブジェクトから指定された注釈を削除します。

(継承元 AnnotatableBase)
RemoveRuntimeAnnotation(String)

このオブジェクトから指定されたランタイム注釈を削除します。

(継承元 AnnotatableBase)
SetAnnotation(String, Annotation, Annotation)

指定したキーの下に格納されている注釈を設定します。 指定した名前の注釈が既に存在する場合は、既存の注釈を上書きします。

(継承元 AnnotatableBase)
SetAnnotation(String, Object)

指定したキーの下に格納されている注釈を設定します。 指定した名前の注釈が既に存在する場合は、既存の注釈を上書きします。

(継承元 AnnotatableBase)
SetRuntimeAnnotation(String, Annotation, Annotation)

指定したキーの下に格納されているランタイム注釈を設定します。 指定した名前の注釈が既に存在する場合は、既存の注釈を上書きします。

(継承元 AnnotatableBase)
SetRuntimeAnnotation(String, Object)

指定したキーの下に格納されているランタイム注釈を設定します。 指定した名前の注釈が既に存在する場合は、既存の注釈を上書きします。

(継承元 AnnotatableBase)
SetSkipDetectChanges(Boolean)

を呼び出す必要があるかどうかを DetectChanges() 示す値を設定します。

明示的なインターフェイスの実装

IAnnotatable.AddRuntimeAnnotation(String, Object)

このオブジェクトにランタイム注釈を追加します。 指定した名前の注釈が既に存在する場合は をスローします。

(継承元 AnnotatableBase)
IAnnotatable.FindRuntimeAnnotation(String)

指定された名前のランタイム注釈を取得し、存在しない場合は を null 返します。

(継承元 AnnotatableBase)
IAnnotatable.GetRuntimeAnnotations()

現在のオブジェクトのすべてのランタイム注釈を取得します。

(継承元 AnnotatableBase)
IAnnotatable.RemoveRuntimeAnnotation(String)

このオブジェクトから指定されたランタイム注釈を削除します。

(継承元 AnnotatableBase)
IAnnotatable.SetRuntimeAnnotation(String, Object)

指定したキーの下に格納されているランタイム注釈を設定します。 指定した名前の注釈が既に存在する場合は、既存の注釈を上書きします。

(継承元 AnnotatableBase)
IModel.FindEntityType(String)

指定した名前のエンティティを取得します。 指定された名前の null エンティティ型が見つからないか、指定された CLR 型が共有型エンティティ型で使用されているか、エンティティ型に定義ナビゲーションがある場合は を返します。

IModel.FindEntityType(String, String, IEntityType)

ナビゲーション名と定義エンティティ型を定義する、指定された名前のエンティティ型を取得します。 一致する null エンティティ型が見つからない場合は を返します。

IModel.FindEntityType(Type)

指定したエンティティ クラスをマップするエンティティを取得します。 指定された null CLR 型を持つエンティティ型が見つからないか、指定された CLR 型が共有型エンティティ型で使用されている場合、またはエンティティ型に定義ナビゲーションがある場合は を返します。

IModel.FindEntityTypes(Type)

指定した型に一致するエンティティ型を取得します。

IModel.FindTypeMappingConfiguration(Type)

特定のスカラー Typeの規則前の構成を検索します。

IModel.GetEntityTypes()

モデルで定義されているすべてのエンティティ型を取得します。

IModel.GetTypeMappingConfigurations()

規則前のすべての構成を取得します。

IModel.IsIndexerMethod(MethodInfo)

指定 MethodInfo された がインデクサー アクセスを表すかどうかを示す値を取得します。

IReadOnlyAnnotatable.FindAnnotation(String)

指定された名前の注釈を取得し、存在しない場合は を null 返します。

(継承元 AnnotatableBase)
IReadOnlyAnnotatable.GetAnnotations()

現在のオブジェクトのすべての注釈を取得します。

(継承元 AnnotatableBase)
IReadOnlyAnnotatable.Item[String]

指定した名前の注釈の値を取得し、存在しない場合は を null 返します。

(継承元 AnnotatableBase)
IReadOnlyModel.FindEntityType(String)

指定した名前のエンティティ型を取得します。 指定された名前の null エンティティ型が見つからないか、指定された CLR 型が共有型エンティティ型で使用されているか、エンティティ型に定義ナビゲーションがある場合は を返します。

IReadOnlyModel.FindEntityType(String, String, IReadOnlyEntityType)

ナビゲーション名と定義エンティティ型を定義する、指定されたベース名のエンティティ型を取得します。 一致する null エンティティ型が見つからない場合は を返します。

IReadOnlyModel.FindEntityType(Type)

指定したエンティティ クラスをマップするエンティティを取得します。 指定された null CLR 型を持つエンティティ型が見つからないか、指定された CLR 型が共有型エンティティ型で使用されている場合、またはエンティティ型に定義ナビゲーションがある場合は を返します。

IReadOnlyModel.FindEntityType(Type, String, IReadOnlyEntityType)

ナビゲーション名と定義エンティティ型を定義する、指定された型のエンティティ型を取得します。 一致する null エンティティ型が見つからない場合は を返します。

IReadOnlyModel.FindEntityTypes(Type)

指定した型に一致するエンティティ型を取得します。

IReadOnlyModel.GetChangeTrackingStrategy()

モデル内のエンティティに使用されている既定の変更追跡戦略を取得します。 この戦略は、エンティティ型のインスタンスのプロパティに対する変更をコンテキストで検出する方法を示します。

IReadOnlyModel.GetEntityTypes()

モデルで定義されているすべてのエンティティ型を取得します。

IReadOnlyModel.GetPropertyAccessMode()

このモデルの PropertyAccessMode エンティティ型のプロパティに使用されている を取得します。

IReadOnlyModel.IsShared(Type)

CLR 型がモデル内の共有型エンティティによって使用されるかどうかを示す値を取得します。

IReadOnlyModel.ModelId

これは Entity Framework Core インフラストラクチャをサポートする内部 API であり、パブリック API と同じ互換性標準の対象ではありません。 いかなるリリースでも予告なく変更または削除される場合があります。 コードで直接使用する場合は、細心の注意を払う必要があります。これを行うと、新しい Entity Framework Core リリースに更新するとアプリケーションエラーが発生する可能性があることを認識してください。

IRuntimeModel.RelationalModel

これは Entity Framework Core インフラストラクチャをサポートする内部 API であり、パブリック API と同じ互換性標準の対象ではありません。 いかなるリリースでも予告なく変更または削除される場合があります。 コードで直接使用する場合は、細心の注意を払う必要があります。これを行うと、新しい Entity Framework Core リリースに更新するとアプリケーションエラーが発生する可能性があることを認識してください。

IRuntimeModel.SkipDetectChanges

エンティティの形状、エンティティ間のリレーションシップ、およびエンティティがデータベースにマップされる方法に関するメタデータ。 モデルは、通常、派生 の メソッドを OnModelCreating(ModelBuilder) オーバーライドすることによって作成されます DbContext

拡張メソッド

GetDefaultContainer(IModel)

既定のコンテナー名を返します。

GetDefaultContainer(IReadOnlyModel)

既定のコンテナー名を返します。

GetThroughput(IReadOnlyModel)

データベース スコープでプロビジョニングされたスループットを返します。

AnnotationsToDebugString(IAnnotatable, Int32)

オブジェクトで宣言されているすべての注釈のデバッグ文字列を取得します。

GetRelationalDependencies(IModel, String)

リレーショナル サービスの依存関係を返します。

FindEntityType(IModel, Type)
互換性のために残されています。.

指定されたエンティティ クラスをマップするエンティティを取得します。 指定された null CLR 型を持つエンティティ型が見つからない場合、または指定された CLR 型が共有型エンティティ型で使用されている場合、またはエンティティ型に定義ナビゲーションがある場合は を返します。

GetEntityTypes(IModel, String)
互換性のために残されています。.

指定された名前に一致するエンティティ型を取得します。

GetEntityTypes(IModel, Type)
互換性のために残されています。.

指定した型に一致するエンティティ型を取得します。

GetProductVersion(IModel)

このモデルのビルドに使用される EF Core アセンブリ バージョンを取得します

HasEntityTypeWithDefiningNavigation(IModel, String)
互換性のために残されています。.

モデルに、ナビゲーションを定義する対応するエンティティ型が含まれているかどうかを示す値を取得します。

HasEntityTypeWithDefiningNavigation(IModel, Type)
互換性のために残されています。.

モデルに、ナビゲーションを定義する対応するエンティティ型が含まれているかどうかを示す値を取得します。

IsIndexerMethod(IModel, MethodInfo)

指定された MethodInfo がインデクサー アクセスを再調整するかどうかを示す値を取得します。

IsShared(IModel, Type)

CLR 型がモデル内の共有型エンティティによって使用されるかどうかを取得します。

ToDebugString(IModel, MetadataDebugStringOptions, Int32)

指定されたメタデータの人間が判読できる表現を作成します。

警告: 返される文字列の形式に依存しないでください。 デバッグ専用に設計されており、リリース間で任意に変更される可能性があります。

FindDbFunction(IModel, MethodInfo)

指定 MethodInfoした によって表されるメソッドにマップされている関数を検索します。

FindDbFunction(IModel, String)

指定した名前で表されるメソッドにマップされている関数を検索します。

FindDbFunction(IReadOnlyModel, MethodInfo)

指定 MethodInfoした によって表されるメソッドにマップされている関数を検索します。

FindDbFunction(IReadOnlyModel, String)

指定した名前で表されるメソッドにマップされている関数を検索します。

FindSequence(IModel, String, String)

指定した名前のシーケンスを検索します。

FindSequence(IReadOnlyModel, String, String)

指定した名前のシーケンスを検索します。

GetCollation(IModel)

データベースの照合順序を返します。

GetCollation(IReadOnlyModel)

データベースの照合順序を返します。

GetDbFunctions(IModel)

モデルに含まれるすべての関数を返します。

GetDbFunctions(IReadOnlyModel)

モデルに含まれるすべての関数を返します。

GetDefaultSchema(IModel)

モデルに使用する既定のスキーマを返します。何 null も設定されていない場合は を返します。

GetDefaultSchema(IReadOnlyModel)

モデルに使用する既定のスキーマを返します。何 null も設定されていない場合は を返します。

GetMaxIdentifierLength(IModel)

ストア識別子に使用できる最大長を返します。

GetMaxIdentifierLength(IReadOnlyModel)

ストア識別子に使用できる最大長を返します。

GetRelationalModel(IModel)

データベース モデルを返します。

GetSequences(IModel)

モデルに含まれるすべてのシーケンスを返します。

GetSequences(IReadOnlyModel)

モデルに含まれるすべてのシーケンスを返します。

GetFluentApiCalls(IModel, IAnnotationCodeGenerator)

モデルを構成するための fluent API 呼び出しを取得します。

GetDatabaseMaxSize(IModel)

データベースの最大サイズを返します。

GetDatabaseMaxSize(IReadOnlyModel)

データベースの最大サイズを返します。

GetHiLoSequenceName(IModel)

既定の hi-lo シーケンスに使用する名前を返します。

GetHiLoSequenceName(IReadOnlyModel)

既定の hi-lo シーケンスに使用する名前を返します。

GetHiLoSequenceSchema(IModel)

既定の hi-lo シーケンスに使用するスキーマを返します。 UseHiLo(PropertyBuilder, String, String)

GetHiLoSequenceSchema(IReadOnlyModel)

既定の hi-lo シーケンスに使用するスキーマを返します。 UseHiLo(PropertyBuilder, String, String)

GetIdentityIncrement(IModel)

既定の ID インクリメントを返します。

GetIdentityIncrement(IReadOnlyModel)

既定の ID インクリメントを返します。

GetIdentitySeed(IModel)

既定の ID シードを返します。

GetIdentitySeed(IReadOnlyModel)

既定の ID シードを返します。

GetPerformanceLevelSql(IModel)

データベースのパフォーマンス レベルを返します。

GetPerformanceLevelSql(IReadOnlyModel)

データベースのパフォーマンス レベルを返します。

GetSequenceNameSuffix(IReadOnlyModel)

自動的に作成されるシーケンスの名前に追加するサフィックスを返します。

GetSequenceSchema(IReadOnlyModel)

既定値の生成シーケンスに使用するスキーマを返します。 UseSequence(PropertyBuilder, String, String)

GetServiceTierSql(IModel)

データベースのサービス レベルを返します。

GetServiceTierSql(IReadOnlyModel)

データベースのサービス レベルを返します。

GetValueGenerationStrategy(IModel)

プロパティに SqlServerValueGenerationStrategy 戦略が明示的に設定されていない限り、モデル内のキーのプロパティに使用する を返します。

GetValueGenerationStrategy(IReadOnlyModel)

プロパティに SqlServerValueGenerationStrategy 戦略が明示的に設定されていない限り、モデル内のキーのプロパティに使用する を返します。

適用対象