次の方法で共有


ForeignKeyPropertyDiscoveryConvention クラス

定義

リレーションシップの外部キー プロパティを名前に基づいて検索する規則。大文字と小文字は区別されません。

  • [ナビゲーション プロパティ名][プリンシパル キー プロパティ名]
  • [ナビゲーション プロパティ名]Id
  • [プリンシパル エンティティ名][プリンシパル キー プロパティ名]
  • [プリンシパル エンティティ名]Id
public class ForeignKeyPropertyDiscoveryConvention : Microsoft.EntityFrameworkCore.Metadata.Conventions.IEntityTypeMemberIgnoredConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IEntityTypePrimaryKeyChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IForeignKeyAddedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IForeignKeyPrincipalEndChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IForeignKeyPropertiesChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IForeignKeyRequirednessChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IForeignKeyUniquenessChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IKeyAddedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IKeyRemovedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IModelFinalizedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.INavigationAddedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IPropertyAddedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IPropertyFieldChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IPropertyNullabilityChangedConvention
public class ForeignKeyPropertyDiscoveryConvention : Microsoft.EntityFrameworkCore.Metadata.Conventions.IEntityTypeMemberIgnoredConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IEntityTypePrimaryKeyChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IForeignKeyAddedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IForeignKeyPrincipalEndChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IForeignKeyPropertiesChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IForeignKeyRequirednessChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IForeignKeyUniquenessChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IKeyAddedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IKeyRemovedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IModelFinalizingConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.INavigationAddedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IPropertyAddedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IPropertyFieldChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.IPropertyNullabilityChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.ISkipNavigationForeignKeyChangedConvention, Microsoft.EntityFrameworkCore.Metadata.Conventions.ISkipNavigationInverseChangedConvention
type ForeignKeyPropertyDiscoveryConvention = class
    interface IForeignKeyAddedConvention
    interface IConvention
    interface INavigationAddedConvention
    interface IPropertyAddedConvention
    interface IEntityTypeMemberIgnoredConvention
    interface IPropertyNullabilityChangedConvention
    interface IPropertyFieldChangedConvention
    interface IForeignKeyPropertiesChangedConvention
    interface IForeignKeyPrincipalEndChangedConvention
    interface IForeignKeyUniquenessChangedConvention
    interface IForeignKeyRequirednessChangedConvention
    interface IKeyAddedConvention
    interface IKeyRemovedConvention
    interface IEntityTypePrimaryKeyChangedConvention
    interface IModelFinalizedConvention
type ForeignKeyPropertyDiscoveryConvention = class
    interface IEntityTypeMemberIgnoredConvention
    interface IConvention
    interface IEntityTypePrimaryKeyChangedConvention
    interface IForeignKeyAddedConvention
    interface IForeignKeyPropertiesChangedConvention
    interface IForeignKeyPrincipalEndChangedConvention
    interface IForeignKeyUniquenessChangedConvention
    interface IForeignKeyRequirednessChangedConvention
    interface IKeyAddedConvention
    interface IKeyRemovedConvention
    interface INavigationAddedConvention
    interface ISkipNavigationForeignKeyChangedConvention
    interface ISkipNavigationInverseChangedConvention
    interface IPropertyAddedConvention
    interface IPropertyNullabilityChangedConvention
    interface IPropertyFieldChangedConvention
    interface IModelFinalizingConvention
Public Class ForeignKeyPropertyDiscoveryConvention
Implements IEntityTypeMemberIgnoredConvention, IEntityTypePrimaryKeyChangedConvention, IForeignKeyAddedConvention, IForeignKeyPrincipalEndChangedConvention, IForeignKeyPropertiesChangedConvention, IForeignKeyRequirednessChangedConvention, IForeignKeyUniquenessChangedConvention, IKeyAddedConvention, IKeyRemovedConvention, IModelFinalizedConvention, INavigationAddedConvention, IPropertyAddedConvention, IPropertyFieldChangedConvention, IPropertyNullabilityChangedConvention
Public Class ForeignKeyPropertyDiscoveryConvention
Implements IEntityTypeMemberIgnoredConvention, IEntityTypePrimaryKeyChangedConvention, IForeignKeyAddedConvention, IForeignKeyPrincipalEndChangedConvention, IForeignKeyPropertiesChangedConvention, IForeignKeyRequirednessChangedConvention, IForeignKeyUniquenessChangedConvention, IKeyAddedConvention, IKeyRemovedConvention, IModelFinalizingConvention, INavigationAddedConvention, IPropertyAddedConvention, IPropertyFieldChangedConvention, IPropertyNullabilityChangedConvention, ISkipNavigationForeignKeyChangedConvention, ISkipNavigationInverseChangedConvention
継承
ForeignKeyPropertyDiscoveryConvention
実装

注釈

一致するプロパティが見つからない場合、リレーションシップは所有権を表しません。依存側はあいまいではなく、派生されません。リレーションシップが 1 対 1 の場合は主キー プロパティが使用されます。それ以外の場合、規則では、依存 PK の適切なサブセットである場合、プロパティとプリンシパル キー プロパティの正確な名前との照合が試みられます。

一致するものが見つかったが、プロパティ型がプリンシパル キー型と互換性がない場合、それ以上の一致は検索されません。

リレーションシップで規則によって作成されたシャドウ プロパティを使用する場合は、名前を一意にするために使用されるサフィックスを削除するために再作成されます。

詳細と例については、「 モデル構築規則 」を参照してください。

コンストラクター

ForeignKeyPropertyDiscoveryConvention(ProviderConventionSetBuilderDependencies)

ForeignKeyPropertyDiscoveryConvention の新しいインスタンスを作成します。

プロパティ

Dependencies

このサービスの依存関係。

メソッド

GetPropertyBaseName(IForeignKey)

指定した外部キーに対して作成されたシャドウ プロパティの一部として使用する文字列を取得します。

GetPropertyBaseName(IReadOnlyForeignKey)

指定した外部キーに対して作成されたシャドウ プロパティの一部として使用する文字列を取得します。

ProcessEntityTypeMemberIgnored(IConventionEntityTypeBuilder, String, IConventionContext<String>)

エンティティ型メンバーが無視された後に呼び出されます。

ProcessEntityTypePrimaryKeyChanged(IConventionEntityTypeBuilder, IConventionKey, IConventionKey, IConventionContext<IConventionKey>)

エンティティ型の主キーが変更された後に呼び出されます。

ProcessForeignKeyAdded(IConventionForeignKeyBuilder, IConventionContext<IConventionForeignKeyBuilder>)

外部キーがエンティティ型に追加された後に呼び出されます。

ProcessForeignKeyAdded(IConventionRelationshipBuilder, IConventionContext<IConventionRelationshipBuilder>)

外部キーがエンティティ型に追加された後に呼び出されます。

ProcessForeignKeyPrincipalEndChanged(IConventionForeignKeyBuilder, IConventionContext<IConventionForeignKeyBuilder>)

外部キーのプリンシパル終了が変更された後に呼び出されます。

ProcessForeignKeyPrincipalEndChanged(IConventionRelationshipBuilder, IConventionContext<IConventionRelationshipBuilder>)

外部キーのプリンシパル終了が変更された後に呼び出されます。

ProcessForeignKeyPropertiesChanged(IConventionForeignKeyBuilder, IReadOnlyList<IConventionProperty>, IConventionKey, IConventionContext<IReadOnlyList<IConventionProperty>>)

外部キーのプロパティまたはプリンシパル キーが変更された後に呼び出されます。

ProcessForeignKeyPropertiesChanged(IConventionRelationshipBuilder, IReadOnlyList<IConventionProperty>, IConventionKey, IConventionContext<IConventionRelationshipBuilder>)

外部キーのプロパティまたはプリンシパル キーが変更された後に呼び出されます。

ProcessForeignKeyRequirednessChanged(IConventionForeignKeyBuilder, IConventionContext<Nullable<Boolean>>)

外部キーの必須性が変更された後に呼び出されます。

ProcessForeignKeyRequirednessChanged(IConventionRelationshipBuilder, IConventionContext<IConventionRelationshipBuilder>)

外部キーの必須性が変更された後に呼び出されます。

ProcessForeignKeyUniquenessChanged(IConventionForeignKeyBuilder, IConventionContext<Nullable<Boolean>>)

外部キーの一意性が変更された後に呼び出されます。

ProcessForeignKeyUniquenessChanged(IConventionRelationshipBuilder, IConventionContext<IConventionRelationshipBuilder>)

外部キーの一意性が変更された後に呼び出されます。

ProcessKeyAdded(IConventionKeyBuilder, IConventionContext<IConventionKeyBuilder>)

キーがエンティティ型に追加された後に呼び出されます。

ProcessKeyRemoved(IConventionEntityTypeBuilder, IConventionKey, IConventionContext<IConventionKey>)

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

ProcessModelFinalized(IConventionModelBuilder, IConventionContext<IConventionModelBuilder>)

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

ProcessModelFinalizing(IConventionModelBuilder, IConventionContext<IConventionModelBuilder>)

モデルの最終処理時に呼び出されます。

ProcessNavigationAdded(IConventionNavigationBuilder, IConventionContext<IConventionNavigationBuilder>)

ナビゲーションがエンティティ型に追加された後に呼び出されます。

ProcessNavigationAdded(IConventionRelationshipBuilder, IConventionNavigation, IConventionContext<IConventionNavigation>)

ナビゲーションがエンティティ型に追加された後に呼び出されます。

ProcessPropertyAdded(IConventionPropertyBuilder, IConventionContext<IConventionPropertyBuilder>)

プロパティがエンティティ型に追加された後に呼び出されます。

ProcessPropertyFieldChanged(IConventionPropertyBuilder, FieldInfo, FieldInfo, IConventionContext<FieldInfo>)

プロパティのバッキング フィールドが変更された後に呼び出されます。

ProcessPropertyNullabilityChanged(IConventionPropertyBuilder, IConventionContext<IConventionPropertyBuilder>)

プロパティの null 許容性が変更された後に呼び出されます。

ProcessPropertyNullabilityChanged(IConventionPropertyBuilder, IConventionContext<Nullable<Boolean>>)

プロパティの null 許容性が変更された後に呼び出されます。

ProcessSkipNavigationForeignKeyChanged(IConventionSkipNavigationBuilder, IConventionForeignKey, IConventionForeignKey, IConventionContext<IConventionForeignKey>)

スキップ ナビゲーションの逆が変更された後に呼び出されます。

ProcessSkipNavigationInverseChanged(IConventionSkipNavigationBuilder, IConventionSkipNavigation, IConventionSkipNavigation, IConventionContext<IConventionSkipNavigation>)

スキップ ナビゲーションの逆が変更された後に呼び出されます。

適用対象