Table of Contents

Class KeyAttributeConvention

Namespace
Microsoft.EntityFrameworkCore.Metadata.Conventions
Assembly
Microsoft.EntityFrameworkCore.dll

A convention that configures the entity type key based on the KeyAttribute specified on a property or Microsoft.EntityFrameworkCore.PrimaryKeyAttribute specified on a CLR type.

public class KeyAttributeConvention : PropertyAttributeConventionBase<KeyAttribute>, IPropertyAddedConvention, IPropertyFieldChangedConvention, IModelFinalizingConvention, IEntityTypeAddedConvention, IEntityTypeBaseTypeChangedConvention, IComplexPropertyAddedConvention, IConvention
Inheritance
KeyAttributeConvention
Implements
Inherited Members

Remarks

See Model building conventions for more information and examples.

Constructors

KeyAttributeConvention(ProviderConventionSetBuilderDependencies)

Creates a new instance of KeyAttributeConvention.

public KeyAttributeConvention(ProviderConventionSetBuilderDependencies dependencies)

Parameters

dependencies ProviderConventionSetBuilderDependencies

Parameter object containing dependencies for this convention.

Methods

ProcessEntityTypeAdded(IConventionEntityTypeBuilder, IConventionContext<IConventionEntityTypeBuilder>)

public virtual void ProcessEntityTypeAdded(IConventionEntityTypeBuilder entityTypeBuilder, IConventionContext<IConventionEntityTypeBuilder> context)

Parameters

entityTypeBuilder IConventionEntityTypeBuilder
context IConventionContext<IConventionEntityTypeBuilder>

ProcessEntityTypeBaseTypeChanged(IConventionEntityTypeBuilder, IConventionEntityType?, IConventionEntityType?, IConventionContext<IConventionEntityType>)

public virtual void ProcessEntityTypeBaseTypeChanged(IConventionEntityTypeBuilder entityTypeBuilder, IConventionEntityType? newBaseType, IConventionEntityType? oldBaseType, IConventionContext<IConventionEntityType> context)

Parameters

entityTypeBuilder IConventionEntityTypeBuilder
newBaseType IConventionEntityType
oldBaseType IConventionEntityType
context IConventionContext<IConventionEntityType>

ProcessModelFinalizing(IConventionModelBuilder, IConventionContext<IConventionModelBuilder>)

public virtual void ProcessModelFinalizing(IConventionModelBuilder modelBuilder, IConventionContext<IConventionModelBuilder> context)

Parameters

modelBuilder IConventionModelBuilder
context IConventionContext<IConventionModelBuilder>

ProcessPropertyAdded(IConventionComplexPropertyBuilder, KeyAttribute, MemberInfo, IConventionContext)

protected override void ProcessPropertyAdded(IConventionComplexPropertyBuilder propertyBuilder, KeyAttribute attribute, MemberInfo clrMember, IConventionContext context)

Parameters

propertyBuilder IConventionComplexPropertyBuilder
attribute KeyAttribute
clrMember MemberInfo
context IConventionContext

ProcessPropertyAdded(IConventionPropertyBuilder, KeyAttribute, MemberInfo, IConventionContext)

protected override void ProcessPropertyAdded(IConventionPropertyBuilder propertyBuilder, KeyAttribute attribute, MemberInfo clrMember, IConventionContext context)

Parameters

propertyBuilder IConventionPropertyBuilder
attribute KeyAttribute
clrMember MemberInfo
context IConventionContext