2009-10-15 34 views
1

我最近張貼了這個:LINQ2SQL - 以明文存儲LINQ表達式(LINQ)爲未來的動態執行

Linq2Sql - Storing Complex Linq Queries for future dynamic execuction - raw text - possible?

它回答了一個問題,但給我發了一條不同的路徑,因爲子查詢需要到參考同一張表原始查詢已經存在英寸

我能夠使用「let」關鍵字完成我想要在Linqpad中完成的任務。

從posMain在DataEventView 讓posSub =從posSub1在DataEventView其中posSub1.CheckNumber == posMain.CheckNumber & & posSub1.EventTypeID == 7選擇posSub1 其中posMain.EventTypeID == 6 & & posSub.Any() 選擇posMain

即有效地創建子查詢,我一直試圖做的。現在

,我想---我真的很想動態地在內存中創建的IQueryable對象,然後我的應用程序可以參考它,並繼續根據需要表達式添加到它。

我想我將不得不用的CodeDOM要做到這一點,但也有可能從僅僅有原始文本入手得到的IQueryable的更優雅的方式。有沒有人需要存儲linq聲明以備將來執行?這些陳述對每個客戶都是動態的,所以他們不能僅僅被編入框架。也許有更好的主意?

在此先感謝。

特拉維斯

回答

0

您可以使用表達式樹。

一些sampels提供here