エンティティ・フレームワーク・プロバイダ(CoreLabs/Mysql/devart)が、遅いクエリを作成しています。エンティティフレームワークプロバイダが実行する実際のSQLを設定することはできますか?
実際に実行されるSQLクエリを設定することは可能でしょうか?
おかげ
エンティティ・フレームワーク・プロバイダ(CoreLabs/Mysql/devart)が、遅いクエリを作成しています。エンティティフレームワークプロバイダが実行する実際のSQLを設定することはできますか?
実際に実行されるSQLクエリを設定することは可能でしょうか?
おかげ
その面白い、私はちょうどLINQPad - New Features for Entity Frameworkを見ていた。ウェブキャストの途中で、彼はEFによって生成されたスクリプトとLinq-To-Sqlによって生成された同じクエリを示しました。 linq-to-sqlで生成されたスクリプトは効率的でした。今私はlinq-to-SQLを使用してあなたのオプションが、私はあなたが知っておくべきだと思ったかどうかわからない
あなたの質問に関しては、私はEFとLinq-to-SQLプログラマーは文字列にTSQLを書くのを避け、EFとLinq-to-SQLの目的を捨てるような独自のSQLコマンドを送る必要はありませんか?
はい、一つの方法は、ObjectQuery.ToTraceString APIです。
私が理解している限り、著者は特定のオブジェクトクエリに対して実行するSQLクエリをどのように置き換えるべきかを質問しますが、基礎となるSQLの読み方は問いません。 –
申し訳ありませんが、 "参照してください"と誤解されています。はい、EF v1の場合、ストアドプロシージャを使用して任意のSQLを実行できます。参照:http://msdn.microsoft.com/en-us/library/bb399203.aspx –
良い質問:Entity Framework内でストアドプロシージャを使用しましたが、それはSQL Serverにあります。 – Merritt
私はmysqlプロバイダでも動作するストアドプロシージャを持っていますが、私のエンティティのナビゲーションプロパティには値が設定されません。 – user48545
私はOracle用のdevartを評価したいと思います。どのような遅いクエリを経験したか分かち合うことができます。それは非効率的だった/悪いSQLは、devartによって生成された? – softveda