2010-06-14 34 views
1

我在中發現的功能非常強大ADO.NET實體LINQ to SQL,是模擬複雜查詢的能力。我真的不需要實體或LINQ to SQL爲我所做的映射 - 我只需要模型複雜表達式的能力,可以將其翻譯爲T-SQL使用ADO.NET實體LINQ提供程序建模複雜的SQL查詢?

我的問題是 - 我濫用了多少?我可以使用實體框架來建模查詢嗎?我是不是該?我知道我可以編寫我自己的自定義LINQ to SQL提供程序,但這在我擁有的時間範圍內無法處理。

建模複雜T-SQL查詢的最佳方法是什麼?你如何處理OOP世界中的條件羣體byes,orders,join,union等?使用StringBuilders這種工作感覺太難看,難以維護,因爲我們有表達樹的可能性。

當我使用StringBuilder建模一個複雜的SQL查詢時,我感到很內疚!我的感覺與我必須將任何數字硬編碼到不同於0或1的代碼中的方式一樣。感覺這會讓您問自己是否有更好更乾淨的方式來執行此操作...

I必須提到我正在使用C#4.0,但我並不是專門用這種語言尋找答案,而是在CLR 4的領域。是否有真正的企業庫可以幫助在運行時構建複雜的SQL?

回答

0

如果您發現在LINQ而不是T-SQL中編寫查詢更容易(更不用說容易出錯),那麼爲什麼不呢?

沒有法律書面規定您不能使用EF或L2S來幫助您編寫T-SQL,然後直接跳過並自行執行T-SQL。

其實我覺得這很有道理。

不要感到內疚!

+0

感謝您的回覆。我正在尋找有關上述任何替代方法的信息?你如何在運行時編寫複雜的T-SQL? – 2010-06-15 07:02:02