LINQ中的重用函数结果

时间:2015-06-27 01:19:39

标签: performance linq entity-framework

我在LINQ中有以下查询作为示例。是否可以保存GetCalendarResources函数的结果,所以我不必多次调用它?感谢。

var query = from T in query2.AsEnumerable()
            select new Event
            {
               resource = GetCalendarResources(T.eventID),
               text = GetCalendarResources(T.eventID) + T.eventName
            };

1 个答案:

答案 0 :(得分:1)

您可以使用let关键字,这样您就可以自由地将其值用于下一级别:

var query = from T in query2.AsEnumerable()
            let res= GetCalendarResources(T.eventID)
            select new Event
            {
               resource =res,
               text = res + T.eventName
            };