我想將一個函數傳遞給LINQ查詢來對現有數據進行操作。例如。我有這樣的功能:將一個函數傳遞給LINQ查詢
string doStuff(Product prod)
{
return string.Format("{0} - {1}", prod.f1, prod.s2);
}
當請求的產品,我想在這個函數來傳遞,因此返回這個字符串,並將其分配到產品性能NewString
。
的POCO的例子對象存儲庫的回報:
class Product
{
public string NewString{get; set;};
public string f1 {get; set;};
public string s2 {get; set;};
}
//Service layer
public IList<Product> GetProducts()
{
//I currently have this:
return _repository.GetProducts().ToList();
//OR, is something like this possible?
return _repository.GetProducts().Select(p => p.NewString = doStuff(p));
}
存儲庫中的所有方法返回IQuerable<Product>
所以基本上,我想要以現有的數據從服務層一個新的字符串。如何在不循環返回對象列表的情況下完成此操作?
產品有超過15個屬性,我將不得不寫出所有這些屬性?我已經在存儲庫中完成了所有這些任務。我只需要將doStuff分配給NewString。 – 2010-10-23 16:18:34