Что происходит, когда я передаю запрос Linq to Entity в ObjectQuery?

Простой вопрос - что это на самом деле делает?

var oq = (ObjectQuery<TEntity>)L2EQuery;
return ExecuteFirstorDefault<TEntity>(oq, MergeOption.AppendOnly);

Частично это из книги «Programming Entity Framework» Юлии Лерман.


person Tommy Jakobsen    schedule 26.06.2009    source источник


Ответы (1)


Само приведение не делает ничего, кроме проверки типа. Поскольку ваш запрос имеет тип ObjectQuery ‹TEntity›, он выполняется. Я предполагаю, что ExecuteFirstOrDefault требует аргумента этого типа, отсюда и приведение.

person Craig Stuntz    schedule 26.06.2009