Class ComplexPropertyDiscoveryConvention
- Namespace
- Microsoft.EntityFrameworkCore.Metadata.Conventions
- Assembly
- Microsoft.EntityFrameworkCore.dll
A convention that configures relationships between entity types based on the navigation properties as long as there is no ambiguity as to which is the corresponding inverse navigation.
public class ComplexPropertyDiscoveryConvention : IEntityTypeAddedConvention, IEntityTypeBaseTypeChangedConvention, IEntityTypeMemberIgnoredConvention, IComplexPropertyAddedConvention, INavigationRemovedConvention, INavigationAddedConvention, IPropertyRemovedConvention, IPropertyAddedConvention, ISkipNavigationRemovedConvention, ISkipNavigationAddedConvention, IModelFinalizingConvention, IConvention
- Inheritance
-
ComplexPropertyDiscoveryConvention
- Implements
- Inherited Members
Remarks
See Model building conventions for more information and examples.
Constructors
ComplexPropertyDiscoveryConvention(ProviderConventionSetBuilderDependencies)
Creates a new instance of ComplexPropertyDiscoveryConvention.
public ComplexPropertyDiscoveryConvention(ProviderConventionSetBuilderDependencies dependencies)
Parameters
dependencies
ProviderConventionSetBuilderDependenciesParameter object containing dependencies for this convention.
Properties
Dependencies
Dependencies for this service.
protected virtual ProviderConventionSetBuilderDependencies Dependencies { get; }
Property Value
Methods
ProcessComplexPropertyAdded(IConventionComplexPropertyBuilder, IConventionContext<IConventionComplexPropertyBuilder>)
public void ProcessComplexPropertyAdded(IConventionComplexPropertyBuilder propertyBuilder, IConventionContext<IConventionComplexPropertyBuilder> context)
Parameters
propertyBuilder
IConventionComplexPropertyBuildercontext
IConventionContext<IConventionComplexPropertyBuilder>
ProcessEntityTypeAdded(IConventionEntityTypeBuilder, IConventionContext<IConventionEntityTypeBuilder>)
public virtual void ProcessEntityTypeAdded(IConventionEntityTypeBuilder entityTypeBuilder, IConventionContext<IConventionEntityTypeBuilder> context)
Parameters
entityTypeBuilder
IConventionEntityTypeBuildercontext
IConventionContext<IConventionEntityTypeBuilder>
ProcessEntityTypeBaseTypeChanged(IConventionEntityTypeBuilder, IConventionEntityType?, IConventionEntityType?, IConventionContext<IConventionEntityType>)
public virtual void ProcessEntityTypeBaseTypeChanged(IConventionEntityTypeBuilder entityTypeBuilder, IConventionEntityType? newBaseType, IConventionEntityType? oldBaseType, IConventionContext<IConventionEntityType> context)
Parameters
entityTypeBuilder
IConventionEntityTypeBuildernewBaseType
IConventionEntityTypeoldBaseType
IConventionEntityTypecontext
IConventionContext<IConventionEntityType>
ProcessEntityTypeMemberIgnored(IConventionEntityTypeBuilder, string, IConventionContext<string>)
public void ProcessEntityTypeMemberIgnored(IConventionEntityTypeBuilder entityTypeBuilder, string name, IConventionContext<string> context)
Parameters
entityTypeBuilder
IConventionEntityTypeBuildername
stringcontext
IConventionContext<string>
ProcessModelFinalizing(IConventionModelBuilder, IConventionContext<IConventionModelBuilder>)
public void ProcessModelFinalizing(IConventionModelBuilder modelBuilder, IConventionContext<IConventionModelBuilder> context)
Parameters
modelBuilder
IConventionModelBuildercontext
IConventionContext<IConventionModelBuilder>
ProcessNavigationAdded(IConventionNavigationBuilder, IConventionContext<IConventionNavigationBuilder>)
public void ProcessNavigationAdded(IConventionNavigationBuilder navigationBuilder, IConventionContext<IConventionNavigationBuilder> context)
Parameters
navigationBuilder
IConventionNavigationBuildercontext
IConventionContext<IConventionNavigationBuilder>
ProcessNavigationRemoved(IConventionEntityTypeBuilder, IConventionEntityTypeBuilder, string, MemberInfo?, IConventionContext<string>)
public virtual void ProcessNavigationRemoved(IConventionEntityTypeBuilder sourceEntityTypeBuilder, IConventionEntityTypeBuilder targetEntityTypeBuilder, string navigationName, MemberInfo? memberInfo, IConventionContext<string> context)
Parameters
sourceEntityTypeBuilder
IConventionEntityTypeBuildertargetEntityTypeBuilder
IConventionEntityTypeBuildernavigationName
stringmemberInfo
MemberInfocontext
IConventionContext<string>
ProcessPropertyAdded(IConventionPropertyBuilder, IConventionContext<IConventionPropertyBuilder>)
public void ProcessPropertyAdded(IConventionPropertyBuilder propertyBuilder, IConventionContext<IConventionPropertyBuilder> context)
Parameters
propertyBuilder
IConventionPropertyBuildercontext
IConventionContext<IConventionPropertyBuilder>
ProcessPropertyRemoved(IConventionTypeBaseBuilder, IConventionProperty, IConventionContext<IConventionProperty>)
public void ProcessPropertyRemoved(IConventionTypeBaseBuilder typeBaseBuilder, IConventionProperty property, IConventionContext<IConventionProperty> context)
Parameters
typeBaseBuilder
IConventionTypeBaseBuilderproperty
IConventionPropertycontext
IConventionContext<IConventionProperty>
ProcessSkipNavigationAdded(IConventionSkipNavigationBuilder, IConventionContext<IConventionSkipNavigationBuilder>)
public void ProcessSkipNavigationAdded(IConventionSkipNavigationBuilder skipNavigationBuilder, IConventionContext<IConventionSkipNavigationBuilder> context)
Parameters
skipNavigationBuilder
IConventionSkipNavigationBuildercontext
IConventionContext<IConventionSkipNavigationBuilder>
ProcessSkipNavigationRemoved(IConventionEntityTypeBuilder, IConventionSkipNavigation, IConventionContext<IConventionSkipNavigation>)
public void ProcessSkipNavigationRemoved(IConventionEntityTypeBuilder entityTypeBuilder, IConventionSkipNavigation navigation, IConventionContext<IConventionSkipNavigation> context)
Parameters
entityTypeBuilder
IConventionEntityTypeBuildernavigation
IConventionSkipNavigationcontext
IConventionContext<IConventionSkipNavigation>