ReferenceReferenceBuilder<TEntity,TRelatedEntity>.HasPrincipalKey Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
HasPrincipalKey(String, String[]) |
Configures the unique property(s) that this relationship targets. Typically you would only call this method if you want to use a property(s) other than the primary key as the principal property(s). If the specified property(s) is not already a unique constraint (or the primary key) then a new unique constraint will be introduced. |
HasPrincipalKey(Type, String[]) |
Configures the unique property(s) that this relationship targets. Typically you would only call this method if you want to use a property(s) other than the primary key as the principal property(s). If the specified property(s) is not already a unique constraint (or the primary key) then a new unique constraint will be introduced. |
HasPrincipalKey<TPrincipalEntity>(Expression<Func<TPrincipalEntity,Object>>) |
Configures the unique property(s) that this relationship targets. Typically you would only call this method if you want to use a property(s) other than the primary key as the principal property(s). If the specified property(s) is not already a unique constraint (or the primary key) then a new unique constraint will be introduced. |
HasPrincipalKey<TPrincipalEntity>(String[]) |
Configures the unique property(s) that this relationship targets. Typically you would only call this method if you want to use a property(s) other than the primary key as the principal property(s). If the specified property(s) is not already a unique constraint (or the primary key) then a new unique constraint will be introduced. |
HasPrincipalKey(String, String[])
Configures the unique property(s) that this relationship targets. Typically you would only call this method if you want to use a property(s) other than the primary key as the principal property(s). If the specified property(s) is not already a unique constraint (or the primary key) then a new unique constraint will be introduced.
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasPrincipalKey (string principalEntityTypeName, params string[] keyPropertyNames);
override this.HasPrincipalKey : string * string[] -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)>
Public Overridable Function HasPrincipalKey (principalEntityTypeName As String, ParamArray keyPropertyNames As String()) As ReferenceReferenceBuilder(Of TEntity, TRelatedEntity)
Parameters
- principalEntityTypeName
- String
The name of entity type that is the principal in this relationship (the type that has the reference key properties).
- keyPropertyNames
- String[]
The name(s) of the reference key property(s).
Returns
The same builder instance so that multiple configuration calls can be chained.
Remarks
If multiple principal key properties are specified, the order of principal key properties should match the order that the primary key or unique constraint properties were configured on the principal entity type.
Applies to
HasPrincipalKey(Type, String[])
Configures the unique property(s) that this relationship targets. Typically you would only call this method if you want to use a property(s) other than the primary key as the principal property(s). If the specified property(s) is not already a unique constraint (or the primary key) then a new unique constraint will be introduced.
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasPrincipalKey (Type principalEntityType, params string[] keyPropertyNames);
override this.HasPrincipalKey : Type * string[] -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)>
Public Overridable Function HasPrincipalKey (principalEntityType As Type, ParamArray keyPropertyNames As String()) As ReferenceReferenceBuilder(Of TEntity, TRelatedEntity)
Parameters
- principalEntityType
- Type
The entity type that is the principal in this relationship (the type that has the reference key properties).
- keyPropertyNames
- String[]
The name(s) of the reference key property(s).
Returns
The same builder instance so that multiple configuration calls can be chained.
Remarks
If multiple principal key properties are specified, the order of principal key properties should match the order that the primary key or unique constraint properties were configured on the principal entity type.
Applies to
HasPrincipalKey<TPrincipalEntity>(Expression<Func<TPrincipalEntity,Object>>)
Configures the unique property(s) that this relationship targets. Typically you would only call this method if you want to use a property(s) other than the primary key as the principal property(s). If the specified property(s) is not already a unique constraint (or the primary key) then a new unique constraint will be introduced.
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasPrincipalKey<TPrincipalEntity> (System.Linq.Expressions.Expression<Func<TPrincipalEntity,object>> keyExpression);
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasPrincipalKey<TPrincipalEntity> (System.Linq.Expressions.Expression<Func<TPrincipalEntity,object>> keyExpression) where TPrincipalEntity : class;
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasPrincipalKey<TPrincipalEntity> (System.Linq.Expressions.Expression<Func<TPrincipalEntity,object?>> keyExpression) where TPrincipalEntity : class;
override this.HasPrincipalKey : System.Linq.Expressions.Expression<Func<'PrincipalEntity, obj>> -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)>
override this.HasPrincipalKey : System.Linq.Expressions.Expression<Func<'PrincipalEntity, obj>> -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)> (requires 'PrincipalEntity : null)
Public Overridable Function HasPrincipalKey(Of TPrincipalEntity) (keyExpression As Expression(Of Func(Of TPrincipalEntity, Object))) As ReferenceReferenceBuilder(Of TEntity, TRelatedEntity)
Public Overridable Function HasPrincipalKey(Of TPrincipalEntity As Class) (keyExpression As Expression(Of Func(Of TPrincipalEntity, Object))) As ReferenceReferenceBuilder(Of TEntity, TRelatedEntity)
Type Parameters
- TPrincipalEntity
The entity type that is the principal in this relationship. That is, the type that has the reference key properties.
Parameters
- keyExpression
- Expression<Func<TPrincipalEntity,Object>>
A lambda expression representing the reference key property(s) (t => t.Id
).
If the principal key is made up of multiple properties then specify an anonymous type including the
properties (t => new { t.Id1, t.Id2 }
). The order specified should match the order of
corresponding properties in HasForeignKey<TDependentEntity>(Expression<Func<TDependentEntity,Object>>).
Returns
The same builder instance so that multiple configuration calls can be chained.
Remarks
If multiple principal key properties are specified, the order of principal key properties should match the order that the primary key or unique constraint properties were configured on the principal entity type.
Applies to
HasPrincipalKey<TPrincipalEntity>(String[])
Configures the unique property(s) that this relationship targets. Typically you would only call this method if you want to use a property(s) other than the primary key as the principal property(s). If the specified property(s) is not already a unique constraint (or the primary key) then a new unique constraint will be introduced.
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasPrincipalKey<TPrincipalEntity> (params string[] keyPropertyNames) where TPrincipalEntity : class;
override this.HasPrincipalKey : string[] -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)> (requires 'PrincipalEntity : null)
Public Overridable Function HasPrincipalKey(Of TPrincipalEntity As Class) (ParamArray keyPropertyNames As String()) As ReferenceReferenceBuilder(Of TEntity, TRelatedEntity)
Type Parameters
- TPrincipalEntity
The entity type that is the principal in this relationship (the type that has the reference key properties).
Parameters
- keyPropertyNames
- String[]
The name(s) of the reference key property(s).
Returns
The same builder instance so that multiple configuration calls can be chained.
Applies to
Entity Framework