Table of Contents

Class RequiredNavigationAttributeConvention

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

A convention that configures the principal side of the relationship as required if the RequiredAttribute is applied on the navigation property to the principal entity type.

public class RequiredNavigationAttributeConvention : NavigationAttributeConventionBase<RequiredAttribute>, INavigationAddedConvention, ISkipNavigationAddedConvention, IForeignKeyPrincipalEndChangedConvention, IConvention
Inheritance
RequiredNavigationAttributeConvention
Implements
Inherited Members

Remarks

See Model building conventions for more information and examples.

Constructors

RequiredNavigationAttributeConvention(ProviderConventionSetBuilderDependencies)

Creates a new instance of RequiredNavigationAttributeConvention.

public RequiredNavigationAttributeConvention(ProviderConventionSetBuilderDependencies dependencies)

Parameters

dependencies ProviderConventionSetBuilderDependencies

Parameter object containing dependencies for this convention.

Methods

ProcessForeignKeyPrincipalEndChanged(IConventionForeignKeyBuilder, IEnumerable<RequiredAttribute>?, IEnumerable<RequiredAttribute>?, IConventionContext<IConventionForeignKeyBuilder>)

public override void ProcessForeignKeyPrincipalEndChanged(IConventionForeignKeyBuilder relationshipBuilder, IEnumerable<RequiredAttribute>? dependentToPrincipalAttributes, IEnumerable<RequiredAttribute>? principalToDependentAttributes, IConventionContext<IConventionForeignKeyBuilder> context)

Parameters

relationshipBuilder IConventionForeignKeyBuilder
dependentToPrincipalAttributes IEnumerable<RequiredAttribute>
principalToDependentAttributes IEnumerable<RequiredAttribute>
context IConventionContext<IConventionForeignKeyBuilder>

ProcessNavigationAdded(IConventionNavigationBuilder, RequiredAttribute, IConventionContext<IConventionNavigationBuilder>)

public override void ProcessNavigationAdded(IConventionNavigationBuilder navigationBuilder, RequiredAttribute attribute, IConventionContext<IConventionNavigationBuilder> context)

Parameters

navigationBuilder IConventionNavigationBuilder
attribute RequiredAttribute
context IConventionContext<IConventionNavigationBuilder>

ProcessSkipNavigationAdded(IConventionSkipNavigationBuilder, RequiredAttribute, IConventionContext<IConventionSkipNavigationBuilder>)

public override void ProcessSkipNavigationAdded(IConventionSkipNavigationBuilder skipNavigationBuilder, RequiredAttribute attribute, IConventionContext<IConventionSkipNavigationBuilder> context)

Parameters

skipNavigationBuilder IConventionSkipNavigationBuilder
attribute RequiredAttribute
context IConventionContext<IConventionSkipNavigationBuilder>