您对在项目中设计 linq 代码有何建议? 特别是,我对大型复杂 linq 查询的代码设计很感兴趣?
例如,您知道,您需要编写很多庞大的 linq 东西,也许您的某些代码会有重复的部分,也许没有,您需要:
使代码易于支持 - 意思是,如果您需要更改某些内容。 - 你正在改变一件事,不是很多
使代码易于阅读 - 意味着,如果您需要查找某些内容 - 您可以轻松地做到这一点。
你可以使用你的例子,也许你的练习。也许是您在任何地方看到的一些模式 - 任何东西。
说到 linq,我指的是任何 linq、linq to sql、linq to objects、linq to xml 等。
最佳答案
您可以为您的对象编写扩展;
主要代码;
IQuerable itemList = _coreRepository.GetSomeItems()
.WithStates(OperationIdentity.SendToSomeWhere)
.BetweenDates(StartDate, EndDate);
扩展;
public static IQueryable<SomeObject> BetweenDates(this IQueryable<SomeObject> query, DateTime startDate, DateTime endDate)
{
return from p in query
where p.CompletedDate >= startDate && p.CompletedDate < endDate
select p;
}
关于c# - 设计复杂 LINQ 代码的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3528993/