我想使用((ObjectQuery)IQueryable).ToTraceString()
來獲取並調整將由LINQ執行的SQL代碼,然後使用SqlCommand.ExecuteReader
運行它,然後反饋到Linq生成相同的結果對象,就好像它沒有改變一樣。如何調整由Linq生成的SQL代碼並獲得執行結果中相同的對象類型
我調整它,使它返回相同的結構(相同的列),例如,我可能只是添加註釋,以便能夠輕鬆過濾SQL Server Profiler中的查詢。
很容易將這些結果用於像Count或1-4列這樣的事情,而無需映射到相同的結果Linq類型。
但是,當我有一個返回由Linq表達式生成的複雜類型的查詢時,我想將SqlDataReader結果反饋給實體框架以獲得用於生成該查詢的相同Linq結果類型?
我正在尋找調整基礎Linq查詢的任何方式,它不必通過SqlCommand。
你想要做什麼類型的「調整」?你可以做很多事情來影響底層的SQL,因此可以預先實現你想要的效果。 – jklemmack
1)將表名替換爲不屬於edmx的另一個表或視圖名。 2)插入註釋以識別和過濾SQL Server Profiler中的查詢。 – alpav