Я бы хотел передать функцию запросам 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>
Итак, я хочу создать новую строку из существующих данных на уровне сервиса. Как мне сделать это, не просматривая возвращенный список объектов?