ReferenceCollectionBuilder<TPrincipalEntity,TDependentEntity>.HasForeignKey Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
HasForeignKey(Expression<Func<TDependentEntity,Object>>) |
Configura le proprietà da usare come chiave esterna per questa relazione. |
HasForeignKey(String[]) |
Configura le proprietà da usare come chiave esterna per questa relazione. |
HasForeignKey(Expression<Func<TDependentEntity,Object>>)
Configura le proprietà da usare come chiave esterna per questa relazione.
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceCollectionBuilder<TPrincipalEntity,TDependentEntity> HasForeignKey (System.Linq.Expressions.Expression<Func<TDependentEntity,object>> foreignKeyExpression);
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceCollectionBuilder<TPrincipalEntity,TDependentEntity> HasForeignKey (System.Linq.Expressions.Expression<Func<TDependentEntity,object?>> foreignKeyExpression);
override this.HasForeignKey : System.Linq.Expressions.Expression<Func<'DependentEntity, obj>> -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceCollectionBuilder<'PrincipalEntity, 'DependentEntity (requires 'PrincipalEntity : null and 'DependentEntity : null)>
Public Overridable Function HasForeignKey (foreignKeyExpression As Expression(Of Func(Of TDependentEntity, Object))) As ReferenceCollectionBuilder(Of TPrincipalEntity, TDependentEntity)
Parametri
- foreignKeyExpression
- Expression<Func<TDependentEntity,Object>>
Espressione lambda che rappresenta le proprietà della chiave esterna (post => post.BlogId
).
Se la chiave esterna è costituita da più proprietà, specificare un tipo anonimo incluso le proprietà (comment => new { comment.BlogId, comment.PostTitle }
). L'ordine specificato deve corrispondere all'ordine delle proprietà corrispondenti in HasPrincipalKey(Expression<Func<TPrincipalEntity,Object>>).
Restituisce
Stessa istanza del generatore in modo che sia possibile concatenare più chiamate di configurazione.
Commenti
Se HasPrincipalKey(Expression<Func<TPrincipalEntity,Object>>) non viene specificato, verrà eseguito un tentativo di corrispondere al tipo di dati e all'ordine delle proprietà della chiave esterna rispetto alla chiave primaria del tipo di entità principale. Se non corrispondono, verranno aggiunte nuove proprietà dello stato shadow che formano un indice univoco al tipo di entità principale da usare come chiave di riferimento. Una proprietà dello stato shadow è una che non ha una proprietà corrispondente nella classe di entità. Il valore corrente per la proprietà viene archiviato nell'oggetto ChangeTracker anziché archiviato in istanze della classe di entità.
Si applica a
HasForeignKey(String[])
Configura le proprietà da usare come chiave esterna per questa relazione.
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceCollectionBuilder<TPrincipalEntity,TDependentEntity> HasForeignKey (params string[] foreignKeyPropertyNames);
override this.HasForeignKey : string[] -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceCollectionBuilder<'PrincipalEntity, 'DependentEntity (requires 'PrincipalEntity : null and 'DependentEntity : null)>
Public Overridable Function HasForeignKey (ParamArray foreignKeyPropertyNames As String()) As ReferenceCollectionBuilder(Of TPrincipalEntity, TDependentEntity)
Parametri
- foreignKeyPropertyNames
- String[]
Nome o nomi delle proprietà chiave esterna.
Restituisce
Stessa istanza del generatore in modo che sia possibile concatenare più chiamate di configurazione.
Commenti
Se i nomi delle proprietà specificati non esistono nel tipo di entità, verrà aggiunto un nuovo stato shadow per servire come chiave esterna. Una proprietà dello stato shadow è una che non ha una proprietà corrispondente nella classe di entità. Il valore corrente per la proprietà viene archiviato nell'oggetto ChangeTracker anziché archiviato in istanze della classe di entità.
Se HasPrincipalKey(Expression<Func<TPrincipalEntity,Object>>) non viene specificato, verrà eseguito un tentativo di corrispondere al tipo di dati e all'ordine delle proprietà della chiave esterna rispetto alla chiave primaria del tipo di entità principale. Se non corrispondono, verranno aggiunte nuove proprietà dello stato shadow che formano un indice univoco al tipo di entità principale da usare come chiave di riferimento.