EntityReference<TEntity> Classe
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.
Rappresenta una fine correlata di un'associazione con una molteplicità pari a zero o uno.
generic <typename TEntity>
where TEntity : class, IEntityWithRelationshipspublic ref class EntityReference sealed : System::Data::Objects::DataClasses::EntityReference
generic <typename TEntity>
where TEntity : classpublic ref class EntityReference sealed : System::Data::Objects::DataClasses::EntityReference
[System.Runtime.Serialization.DataContract]
[System.Serializable]
public sealed class EntityReference<TEntity> : System.Data.Objects.DataClasses.EntityReference where TEntity : class, IEntityWithRelationships
[System.Runtime.Serialization.DataContract]
[System.Serializable]
public sealed class EntityReference<TEntity> : System.Data.Objects.DataClasses.EntityReference where TEntity : class
[<System.Runtime.Serialization.DataContract>]
[<System.Serializable>]
type EntityReference<'Entity (requires 'Entity : null and 'Entity :> IEntityWithRelationships)> = class
inherit EntityReference
[<System.Runtime.Serialization.DataContract>]
[<System.Serializable>]
type EntityReference<'Entity (requires 'Entity : null)> = class
inherit EntityReference
Public NotInheritable Class EntityReference(Of TEntity)
Inherits EntityReference
Parametri di tipo
- TEntity
Tipo di entità del riferimento.
- Ereditarietà
- Attributi
Esempio
In questo esempio viene illustrato come utilizzare l'oggetto EntityReference<TEntity> per modificare una relazione tra un SalesOrderHeader oggetto e un oggetto correlato Address che rappresenta l'indirizzo di spedizione per l'ordine.
// Define the order and new address IDs.
int orderId = 43669;
int addressId = 26;
using (AdventureWorksEntities context
= new AdventureWorksEntities())
{
// Get the billing address to change to.
Address address =
context.Addresses.Single(c => c.AddressID == addressId);
// Get the order being changed.
SalesOrderHeader order =
context.SalesOrderHeaders.Single(o => o.SalesOrderID == orderId);
// You do not have to call the Load method to load the addresses for the order,
// because lazy loading is set to true
// by the constructor of the AdventureWorksEntities object.
// With lazy loading set to true the related objects are loaded when
// you access the navigation property. In this case Address.
// Write the current billing street address.
Console.WriteLine("Current street: "
+ order.Address.AddressLine1);
// Change the billing address.
if (!order.Address.Equals(address))
{
// Use Address navigation property to change the association.
order.Address = address;
// Write the changed billing street address.
Console.WriteLine("Changed street: "
+ order.Address.AddressLine1);
}
// If the address change succeeds, save the changes.
context.SaveChanges();
// Write the current billing street address.
Console.WriteLine("Current street: "
+ order.Address.AddressLine1);
}
Commenti
Un EntityReference<TEntity> oggetto viene restituito da una proprietà di navigazione quando l'estremità correlata ha una molteplicità pari a zero o uno. Per altre informazioni, vedere Elemento NavigationProperty (CSDL).
Un EntityReference<TEntity> oggetto potrebbe avere una relazione corrispondente EntityCollection<TEntity> (una-a-molti) o EntityReference<TEntity> (relazione uno-a-uno) all'altra estremità della relazione. Quando un EntityReference<TEntity> oggetto e un EntityCollection<TEntity> modello opposto terminano la stessa relazione, l'integrità della relazione viene mantenuta a livello di oggetto.
La classe non può essere ereditata.
Costruttori
| Nome | Descrizione |
|---|---|
| EntityReference<TEntity>() |
Crea una nuova istanza di EntityReference<TEntity>. |
Proprietà
| Nome | Descrizione |
|---|---|
| EntityKey |
Restituisce la chiave per l'oggetto correlato. (Ereditato da EntityReference) |
| IsLoaded |
Ottiene un valore che indica se tutti gli oggetti correlati sono stati caricati. (Ereditato da RelatedEnd) |
| RelationshipName |
Ottiene il nome della relazione in cui partecipa l'estremità correlata. (Ereditato da RelatedEnd) |
| RelationshipSet |
Ottiene un riferimento ai metadati per la fine correlata. (Ereditato da RelatedEnd) |
| SourceRoleName |
Ottiene il nome del ruolo alla fine della relazione di origine. (Ereditato da RelatedEnd) |
| TargetRoleName |
Ottiene il nome del ruolo alla fine della relazione di destinazione. (Ereditato da RelatedEnd) |
| Value |
Ottiene o imposta l'oggetto correlato restituito da questo EntityReference<TEntity>oggetto . |
Metodi
| Nome | Descrizione |
|---|---|
| Attach(TEntity) |
Crea una relazione molti-a-uno o uno-a-uno tra due oggetti nel contesto dell'oggetto. |
| Attach<TEntity>(IEnumerable<TEntity>, Boolean) |
Definisce una relazione tra due oggetti collegati. (Ereditato da RelatedEnd) |
| CreateSourceQuery() |
Crea una query oggetto equivalente che restituisce l'oggetto correlato. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetEnumerator() |
Restituisce un oggetto IEnumerator che scorre l'insieme di oggetti correlati. (Ereditato da RelatedEnd) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| Load() |
Quando sottoposto a override in una classe derivata, carica l'oggetto o gli oggetti correlati nella fine correlata con l'opzione di unione predefinita. (Ereditato da RelatedEnd) |
| Load(MergeOption) |
Carica l'oggetto correlato per questo EntityReference<TEntity> oggetto con l'opzione di unione specificata. |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| Merge<TEntity>(IEnumerable<TEntity>, MergeOption, Boolean) |
Unisce le entità correlate nell'oggetto locale EntityCollection<TEntity>. (Ereditato da RelatedEnd) |
| OnDeserialized(StreamingContext) |
Usato internamente per deserializzare gli oggetti entità insieme alle RelationshipManager istanze di . (Ereditato da RelatedEnd) |
| OnRefDeserialized(StreamingContext) |
Questo metodo viene usato internamente per serializzare gli oggetti entità correlati. |
| OnSerializing(StreamingContext) |
Questo metodo viene usato internamente per serializzare gli oggetti entità correlati. |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
| ValidateEntityForAttach<TEntity>(TEntity, Int32, Boolean) |
Determina se un oggetto può essere associato all'insieme o al riferimento locale. (Ereditato da RelatedEnd) |
| ValidateLoad<TEntity>(MergeOption, String) |
Assicura che l'oggetto o gli oggetti correlati possano essere caricati correttamente nella raccolta o nel riferimento locale. (Ereditato da RelatedEnd) |
| ValidateOwnerForAttach() |
Assicura che l'oggetto a cui appartiene l'endpoint correlato supporti un'operazione di collegamento. (Ereditato da RelatedEnd) |
Eventi
| Nome | Descrizione |
|---|---|
| AssociationChanged |
Si verifica quando viene apportata una modifica a una fine correlata. (Ereditato da RelatedEnd) |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IRelatedEnd.Add(IEntityWithRelationships) |
Aggiunge un oggetto alla fine correlata. (Ereditato da RelatedEnd) |
| IRelatedEnd.Add(Object) |
Aggiunge un oggetto alla fine correlata. (Ereditato da RelatedEnd) |
| IRelatedEnd.Attach(IEntityWithRelationships) |
Associa un oggetto alla fine correlata. (Ereditato da RelatedEnd) |
| IRelatedEnd.Attach(Object) |
Associa un oggetto alla fine correlata. (Ereditato da RelatedEnd) |
| IRelatedEnd.CreateSourceQuery() |
Restituisce un oggetto IEnumerable che rappresenta gli oggetti che appartengono alla fine correlata. (Ereditato da RelatedEnd) |
| IRelatedEnd.Remove(IEntityWithRelationships) |
Rimuove un oggetto dalla raccolta alla fine correlata. (Ereditato da RelatedEnd) |
| IRelatedEnd.Remove(Object) |
Rimuove un oggetto dalla fine correlata se l'oggetto fa parte della fine correlata. (Ereditato da RelatedEnd) |