EntityReference<TEntity>.Load(MergeOption) Método

Definição

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

public:
 override void Load(System::Data::Objects::MergeOption mergeOption);
public override void Load(System.Data.Objects.MergeOption mergeOption);
override this.Load : System.Data.Objects.MergeOption -> unit
Public Overrides Sub Load (mergeOption As MergeOption)

Parâmetros

mergeOption
MergeOption

Especifica como o objeto deve ser devolvido se já existir no ObjectContext.

Exceções

A fonte do EntityReference<TEntity> é null.

-ou-

Uma consulta devolveu mais do que uma extremidade relacionada.

-ou-

Uma consulta devolveu zero extremidades relacionadas, e esperava-se uma extremidade relacionada.

Observações

Este método é usado para carregar o objeto relacionado.

Quando carregado, o objeto relacionado é acedido a partir da Value propriedade.

Para carregar explicitamente objetos relacionados, deve chamar o Load método na extremidade relacionada devolvido pela propriedade de navegação. Para uma relação um-para-muitos, chame o Load método em EntityCollection<TEntity>, e para uma relação um-para-um, chame o Load em EntityReference<TEntity>. Isto carrega os dados relacionados do objeto no contexto do objeto. Quando uma consulta retorna resultados, pode enumerar através da coleção de objetos usando um ciclo foreach (For Each...Next em Visual Basic) e chamar condicionalmente o método Load em EntityReference<TEntity> e EntityCollection<TEntity> propriedades para cada entidade nos resultados.

O Load método carrega objetos relacionados a partir da fonte de dados, seja ou trueIsLoaded não .

Note

Quando chama o método Load durante uma enumeração foreach (C#) ou For Each (Visual Basic), o Object Services tenta abrir um novo leitor de dados. Esta operação falhará a menos que tenha ativado vários conjuntos de resultados ativos especificando multipleactiveresultsets=true no cadeia de ligação. Também pode carregar o resultado da consulta numa List<T> coleção. Isto fecha o leitor de dados e permite-lhe enumerar sobre a coleção para carregar objetos referenciados.

Este método chama o método interno RelatedEnd.ValidateLoad antes de carregar o objeto relacionado, o que valida que uma chamada a Load tem as condições corretas. O RelatedEnd.ValidateLoad método verifica que:

Quando o objeto relacionado já está carregado no ObjectContext, o Load método impõe o MergeOption especificado pelo mergeOption parâmetro. Para obter mais informações, consulte Resolução de identidade, Gerenciamento de estado e Controle de alterações.

Aplica-se a

Ver também