我最近发布了这个:
Linq2Sql - Storing Complex Linq Queries for future dynamic execuction - raw text - possible?
它回答了一个问题,但是由于subQuery需要引用原始查询已存在的同一个表,因此将其发送到不同的路径。
我能够使用“let”关键字在Linqpad中完成我想做的事。
来自DataEventView中的posMain 让posSub =来自DataEventView中的posSub1,其中posSub1.CheckNumber == posMain.CheckNumber&& posSub1.EventTypeID == 7选择posSub1 其中posMain.EventTypeID == 6&& posSub.Any() 选择posMain
这有效地创建了我一直试图做的子查询。
现在,我在想 - 我真的想在内存中动态创建IQueryable对象,然后我的应用程序可以引用它,并继续根据需要添加表达式。
我在想我将不得不使用CodeDom来做这件事,但是可能有更优雅的方式让IQueryable从Raw Text开始。有没有人必须存储linq语句以备将来执行?这些语句对于每个客户都是动态的,因此它们不能仅仅被编入框架中。也许有更好的主意?
提前致谢。
特拉维斯