EntityReference<TEntity> Classe

Definição

Representa um final relacionado 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
EntityReference<TEntity>
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 o final relacionado tem uma multiplicidade de zero ou um. Para obter mais informações, consulte o 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> modelo e um EntityCollection<TEntity> modelo se opõem a extremidades da mesma relação, a integridade da relação é mantida no nível do objeto.

Essa classe não pode ser herdada.

Construtores

Nome Description
EntityReference<TEntity>()

Cria uma nova instância de EntityReference<TEntity>.

Propriedades

Nome Description
EntityKey

Retorna a chave do 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 esse final relacionado participa.

(Herdado de RelatedEnd)
RelationshipSet

Obtém uma referência aos metadados para o final relacionado.

(Herdado de RelatedEnd)
SourceRoleName

Obtém o nome da função no final da origem da relação.

(Herdado de RelatedEnd)
TargetRoleName

Obtém o nome da função no final da relação de destino.

(Herdado de RelatedEnd)
Value

Obtém ou define o objeto relacionado retornado por este EntityReference<TEntity>.

Métodos

Nome Description
Attach(TEntity)

Cria uma relação muitos para um ou um para um entre dois objetos no contexto do 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 por meio da coleção de objetos relacionados.

(Herdado de RelatedEnd)
GetHashCode()

Serve como a função hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
Load()

Quando substituído em uma classe derivada, carrega o objeto ou objetos relacionados no final relacionado com a opção de mesclagem padrão.

(Herdado de RelatedEnd)
Load(MergeOption)

Carrega o objeto relacionado para isso EntityReference<TEntity> com a opção de mesclagem especificada.

MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
Merge<TEntity>(IEnumerable<TEntity>, MergeOption, Boolean)

Mescla entidades relacionadas ao local EntityCollection<TEntity>.

(Herdado de RelatedEnd)
OnDeserialized(StreamingContext)

Usado internamente para desserializar objetos de entidade junto com as RelationshipManager instâncias.

(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 à coleção ou referência local.

(Herdado de RelatedEnd)
ValidateLoad<TEntity>(MergeOption, String)

Garante que o objeto ou os objetos relacionados possam ser carregados com êxito na coleção ou referência local.

(Herdado de RelatedEnd)
ValidateOwnerForAttach()

Garante que o objeto ao qual a extremidade relacionada pertence dê suporte a uma operação de anexação.

(Herdado de RelatedEnd)

Eventos

Nome Description
AssociationChanged

Ocorre quando uma alteração é feita em um final relacionado.

(Herdado de RelatedEnd)

Implantações explícitas de interface

Nome Description
IRelatedEnd.Add(IEntityWithRelationships)

Adiciona um objeto ao final relacionado.

(Herdado de RelatedEnd)
IRelatedEnd.Add(Object)

Adiciona um objeto ao final relacionado.

(Herdado de RelatedEnd)
IRelatedEnd.Attach(IEntityWithRelationships)

Anexa um objeto no final relacionado.

(Herdado de RelatedEnd)
IRelatedEnd.Attach(Object)

Anexa um objeto ao final relacionado.

(Herdado de RelatedEnd)
IRelatedEnd.CreateSourceQuery()

Retorna um IEnumerable que representa os objetos que pertencem ao final relacionado.

(Herdado de RelatedEnd)
IRelatedEnd.Remove(IEntityWithRelationships)

Remove um objeto da coleção no final relacionado.

(Herdado de RelatedEnd)
IRelatedEnd.Remove(Object)

Remove um objeto da extremidade relacionada se o objeto fizer parte da extremidade relacionada.

(Herdado de RelatedEnd)

Aplica-se a