EntityReference<TEntity> Classe

Definizione

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à
EntityReference<TEntity>
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)

Si applica a