2
我有我傳遞給IQueryable<>.Select()
方式的投影功能:如何使用EF查詢中的函數參數化選擇器?
private static Expression<Func<VendorPrice, PriceItem>> GetPriceSelector(){
return e => new PriceItem {
Id = e.Id,
Price = Math.Round(e.Price, 4)
};
}
一切工作得很好,但我想參數會這樣:
private static Expression<Func<VendorPrice, PriceItem>> GetPriceSelector(Func<VendorPrice, decimal> formula){
return e => new PriceItem {
Id = e.Id,
Price = formula(e)
};
}
,這樣我可以把它像
prices.Select(GetPriceSelector(e => Math.Round(e.Price, 4)))
遺憾的是,EF對此抱怨:
的LINQ表達式節點類型「調用」在LINQ是不支持 實體
如何重寫代碼,使EF幸福嗎?