如果我想在已经存在的lambda树表达式中检索更多的列,该怎么做? 这适用于Entity Frameworks,并希望它仍然可用。
Expression<Func<DivisionTeam, DirectorTeamModel>> columns= (d) => new DirectorTeamModel
{
Id = d.Id,
TeamId = d.Team.Id
};
if (criteria.Template == ExportTemplate.Import || criteria.Template == ExportTemplate.Default)
{
// Retrieve additional columns from "columns" expression tree
}
return _divisionTeamsRepository.GetPagedResults(criteria.Page, criteria.PageSize, @where.Expand(), string.Format("{0} {1}", criteria.SortOrder, criteria.SortDirection), columns);
带有语句主体的 Lambda 表达式无法转换为表达式树。
- Mike FlynnMemberExpression
,将它们添加到绑定中,对于每个要添加的附加属性都要这样做,然后无论如何都要创建一个新表达式,因为许多层次结构本身是不可变的。 - DavidG