EntityReference<TEntity> Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa uma extremidade relacionada de uma associação com uma multiplicidade de zero ou um.
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
Parâmetros de tipo
- TEntity
O tipo de entidade da referência.
- Herança
- Atributos
Exemplos
Este exemplo mostra como usar o EntityReference<TEntity> objeto para alterar uma relação entre um SalesOrderHeader
objeto e um objeto relacionado Address
que representa o endereço de envio do pedido.
// 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);
}
Comentários
Um EntityReference<TEntity> objeto é retornado por uma propriedade de navegação quando a extremidade relacionada tem uma multiplicidade de zero ou um. Para obter mais informações, consulte Elemento NavigationProperty (CSDL).
Um EntityReference<TEntity> objeto pode ter uma relação correspondente EntityCollection<TEntity> (um para muitos) ou EntityReference<TEntity> (relação um para um) na outra extremidade da relação. Quando um EntityReference<TEntity> e um EntityCollection<TEntity> modelo se opõem às extremidades da mesma relação, a integridade da relação é mantida no nível do objeto.
Essa classe não pode ser herdada.
Construtores
EntityReference<TEntity>() |
Cria uma nova instância de EntityReference<TEntity>. |
Propriedades
EntityKey |
Retorna uma chave para o objeto relacionado. (Herdado de EntityReference) |
IsLoaded |
Obtém um valor que indica se todos os objetos relacionados foram carregados. (Herdado de RelatedEnd) |
RelationshipName |
Obtém o nome da relação na qual essa extremidade relacionada participa. (Herdado de RelatedEnd) |
RelationshipSet |
Obtém uma referência aos metadados para a extremidade relacionada. (Herdado de RelatedEnd) |
SourceRoleName |
Obtém o nome da função na extremidade de origem da relação. (Herdado de RelatedEnd) |
TargetRoleName |
Obtém o nome da função na extremidade de destino da relação. (Herdado de RelatedEnd) |
Value |
Obtém ou define o objeto relacionado retornado por este EntityReference<TEntity>. |
Métodos
Attach(TEntity) |
Cria uma relação muitos para um ou um para um entre dois objetos no contexto de objeto. |
Attach<TEntity>(IEnumerable<TEntity>, Boolean) |
Define uma relação entre dois objetos anexados. (Herdado de RelatedEnd) |
CreateSourceQuery() |
Cria uma consulta de objeto equivalente que retorna o objeto relacionado. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetEnumerator() |
Retorna um IEnumerator que itera na coleção de objetos relacionados. (Herdado de RelatedEnd) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
Load() |
Quando substituído em uma classe derivada, carrega um ou mais objetos relacionados à extremidade relacionada com a opção de mesclagem padrão. (Herdado de RelatedEnd) |
Load(MergeOption) |
Carrega o objeto relacionado para este EntityReference<TEntity> com a opção de mesclagem especificada. |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
Merge<TEntity>(IEnumerable<TEntity>, MergeOption, Boolean) |
Mescla entidades relacionadas com o EntityCollection<TEntity> local. (Herdado de RelatedEnd) |
OnDeserialized(StreamingContext) |
Usado internamente para desserializar objetos de entidade junto com instâncias do RelationshipManager. (Herdado de RelatedEnd) |
OnRefDeserialized(StreamingContext) |
Esse método é usado internamente para serializar objetos de entidade relacionados. |
OnSerializing(StreamingContext) |
Esse método é usado internamente para serializar objetos de entidade relacionados. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
ValidateEntityForAttach<TEntity>(TEntity, Int32, Boolean) |
Determina se um objeto pode ser anexado à referência ou à coleção local. (Herdado de RelatedEnd) |
ValidateLoad<TEntity>(MergeOption, String) |
Garante que os objetos relacionados podem ser carregados com êxito na referência ou na coleção local. (Herdado de RelatedEnd) |
ValidateOwnerForAttach() |
Garante que o objeto ao qual pertence a extremidade relacionada dá suporte a uma operação de anexação. (Herdado de RelatedEnd) |
Eventos
AssociationChanged |
Ocorre quando é feita uma alteração a uma extremidade relacionada. (Herdado de RelatedEnd) |
Implantações explícitas de interface
IRelatedEnd.Add(IEntityWithRelationships) |
Adiciona um objeto à extremidade relacionada. (Herdado de RelatedEnd) |
IRelatedEnd.Add(Object) |
Adiciona um objeto à extremidade relacionada. (Herdado de RelatedEnd) |
IRelatedEnd.Attach(IEntityWithRelationships) |
Anexa um objeto ao final relacionado. (Herdado de RelatedEnd) |
IRelatedEnd.Attach(Object) |
Anexa um objeto ao fim relacionado. (Herdado de RelatedEnd) |
IRelatedEnd.CreateSourceQuery() |
Retorna um IEnumerable que representa os objetos que pertencem à extremidade relacionada. (Herdado de RelatedEnd) |
IRelatedEnd.Remove(IEntityWithRelationships) |
Remove um objeto da coleção na extremidade relacionada. (Herdado de RelatedEnd) |
IRelatedEnd.Remove(Object) |
Remove um objeto da extremidade relacionada se o objeto fizer parte da extremidade relacionada. (Herdado de RelatedEnd) |