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 un'entità finale correlata di un'associazione con una molteplicità di 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 oggetto SalesOrderHeader
e un oggetto Address
correlato 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 oggetto EntityReference<TEntity> viene restituito da una proprietà di navigazione quando l'entità finale correlata ha una molteplicità di zero o uno. Per altre informazioni, vedere Elemento NavigationProperty (CSDL).
Un oggetto EntityReference<TEntity> potrebbe avere un oggetto EntityCollection<TEntity> corrispondente (relazione uno-a-molti) o un oggetto EntityReference<TEntity> (relazione uno-a-uno) all'altra entità finale della relazione. Quando EntityReference<TEntity> e EntityCollection<TEntity> modellano le entità finali opposte della stessa relazione, l'integrità della relazione viene mantenuta a livello di oggetto.
La classe non può essere ereditata.
Costruttori
EntityReference<TEntity>() |
Crea una nuova istanza di EntityReference<TEntity>. |
Proprietà
EntityKey |
Restituisce la chiave dell'oggetto correlato. (Ereditato da EntityReference) |
IsLoaded |
Ottiene un valore che indica se sono stati caricati tutti gli oggetti correlati. (Ereditato da RelatedEnd) |
RelationshipName |
Ottiene il nome della relazione di cui fa parte l'entità finale correlata. (Ereditato da RelatedEnd) |
RelationshipSet |
Ottiene un riferimento ai metadati per l'entità finale correlata. (Ereditato da RelatedEnd) |
SourceRoleName |
Ottiene il nome del ruolo nell'entità finale di origine della relazione. (Ereditato da RelatedEnd) |
TargetRoleName |
Ottiene il nome del ruolo nell'entità finale di destinazione della relazione. (Ereditato da RelatedEnd) |
Value |
Ottiene o imposta l'oggetto correlato restituito dall'oggetto EntityReference<TEntity>. |
Metodi
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 connessi. (Ereditato da RelatedEnd) |
CreateSourceQuery() |
Crea una query di 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 con cui è possibile scorrere la raccolta di oggetti correlati. (Ereditato da RelatedEnd) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
Load() |
Quando sottoposto a override in una classe derivata, carica l'oggetto o gli oggetti correlati nell'entità finale correlata con l'opzione di merge predefinita. (Ereditato da RelatedEnd) |
Load(MergeOption) |
Carica l'oggetto correlato per l'oggetto EntityReference<TEntity> con l'opzione di unione specificata. |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
Merge<TEntity>(IEnumerable<TEntity>, MergeOption, Boolean) |
Unisce le entità correlate nell'oggetto EntityCollection<TEntity> locale. (Ereditato da RelatedEnd) |
OnDeserialized(StreamingContext) |
Utilizzato internamente per deserializzare oggetti entità insieme alle istanze RelationshipManager. (Ereditato da RelatedEnd) |
OnRefDeserialized(StreamingContext) |
Tale metodo viene utilizzato internamente per serializzare oggetti entità correlati. |
OnSerializing(StreamingContext) |
Tale metodo viene utilizzato internamente per serializzare 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 collegato alla raccolta 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 al quale appartiene l'entità finale correlata supporti un'operazione di collegamento. (Ereditato da RelatedEnd) |
Eventi
AssociationChanged |
Si verifica quando viene apportata una modifica a un'entità finale correlata. (Ereditato da RelatedEnd) |
Implementazioni dell'interfaccia esplicita
IRelatedEnd.Add(IEntityWithRelationships) |
Aggiunge un oggetto all'entità finale correlata. (Ereditato da RelatedEnd) |
IRelatedEnd.Add(Object) |
Aggiunge un oggetto all'entità finale correlata. (Ereditato da RelatedEnd) |
IRelatedEnd.Attach(IEntityWithRelationships) |
Connette un oggetto all'entità finale correlata. (Ereditato da RelatedEnd) |
IRelatedEnd.Attach(Object) |
Collega un oggetto all'entità finale correlata. (Ereditato da RelatedEnd) |
IRelatedEnd.CreateSourceQuery() |
Restituisce un oggetto IEnumerable che rappresenta gli oggetti appartenenti all'entità finale correlata. (Ereditato da RelatedEnd) |
IRelatedEnd.Remove(IEntityWithRelationships) |
Rimuove un oggetto dalla raccolta nell'entità finale correlata. (Ereditato da RelatedEnd) |
IRelatedEnd.Remove(Object) |
Rimuove un oggetto dall'entità finale correlata se l'oggetto fa parte dell'entità finale correlata. (Ereditato da RelatedEnd) |