2011-11-14 108 views
2

我們有一個編譯的實體框架linq查詢的集合,用於訪問我們的SQL數據(靜態類成員的常用模型)。將可選的OrderBy添加到已編譯的實體框架LINQ查詢

在某些情況下,我們現在需要爲這些查詢中的一些提供可選的排序,並且還將這些作爲已編譯的實體框架查詢。

現在,只需調出已編譯的查詢併爲場景創建順序就很容易了,但我們更願意保留「基本」表達式,然後將相應的OrderBy「追加」到它。

現在,當您不使用編譯查詢時,這似乎很容易實現。同樣,我試過使用Linqkit的AsExpandable擴展,但實體框架編譯器似乎不喜歡它。

任何人都可以得到我如何實現這一目標的指針(沒有大量代碼在表達樹中漫遊)?

回答

0

一種方法是在.NET 4.5中使用EF(仍然在CTP中,但不支持RSN)EF,它默認情況下透明地編譯所有查詢,而不需要明確使用CompiledQuery。我認爲還沒有上線許可證,但如果你願意等你免費獲得這個許可證。