Associando entidades por ID no Entity Framework

06/17/2009 14:33:00 By Felipe Pessoto

Uma dica que pode ajudar muito:

Imagine que temos um relacionamento da tabela Mensagem com a Usuario, normalmente fariamos o seguinte para criar um relacionamento:

Mensagem mens = new Mensagem();
mens.Usuario = from us in contexto.UsuarioSet
where us.Id = 10
select us;

contexto.AddToMensagemSet(mens);
contexto.SaveChanges();


O problema é fazemos uma consulta no banco somente para criar o relacionamento, sendo que já temos a informação necessária para isso, o Id do Usuario.
Existe uma outra forma de fazer isso sem consultar o banco de dados:

Mensagem mens = new Mensagem();
mens.UsuarioReference.EntityKey = new EntityKey("YourEntitiesModel.UsuarioSet", "Id", 10);

contexto.AddToMensagemSet(mens);
contexto.SaveChanges();

Assim economizamos um Select, o que faz a diferença quando temos muitas chamadas


Comments (0)