У меня есть выражение, которое преобразует один тип объекта в другой тип.Выражение выглядит следующим образом:
public Expression<Func<SQLRepository.ActionType, Model.ActionType>> DBActionTypeToActionType =
(SQLRepository.ActionType at) => new Model.ActionType()
{
ID = at.OID,
DisplayName = at.DisplayName
};
Я могу использовать выражение следующим образом:
var linq = (from at in dc.SQLRepositoryDC.ActionTypes select at).Select(DBActionTypeToActionType);
Но я бы хотел использовать его так:
var linq = (from at in dc.SQLRepositoryDC.ActionTypes select DBActionTypeToActionType.Compile().Invoke(at));
Я искал пару дней и могу найти ссылки на это в предложении «Где».Кажется, что если я могу использовать вызовы функций для этого, это должно быть возможно с использованием синтаксиса запроса.
Причина, по которой важно использовать синтаксис запроса, состоит в том, что некоторые объекты, которыевыбираются, состоят из множества подобъектов, и при попытке связать их все преобразования вместе с нотацией функции будет намного сложнее написать и поддерживать.