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
ProviderConventionSetBuilderDependenciesParameter 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
IConventionForeignKeyBuilderdependentToPrincipalAttributes
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
IConventionNavigationBuilderattribute
RequiredAttributecontext
IConventionContext<IConventionNavigationBuilder>
ProcessSkipNavigationAdded(IConventionSkipNavigationBuilder, RequiredAttribute, IConventionContext<IConventionSkipNavigationBuilder>)
public override void ProcessSkipNavigationAdded(IConventionSkipNavigationBuilder skipNavigationBuilder, RequiredAttribute attribute, IConventionContext<IConventionSkipNavigationBuilder> context)
Parameters
skipNavigationBuilder
IConventionSkipNavigationBuilderattribute
RequiredAttributecontext
IConventionContext<IConventionSkipNavigationBuilder>