問題タブ [compiled-query]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - スリックでコンパイルされたクエリは実際にどのように機能しますか?
コンパイルされたクエリの実行に関する詳細な説明を探しています。それらが一度だけコンパイルされる方法と、それらを使用する利点が理解できません
c# - Linq から Sql CompiledQuery への参照は、破棄された DataContext
.NET 4.6 に基づくバックエンド アプリでは、多くの Linq To Sql コンパイル済みクエリを使用します。dotMemory を使用してアプリケーションを分析したところ、クエリが最初にコンパイルされた (現在は破棄された) DataContext への参照が含まれていることがわかりました。この参照は消えることはないようです。
クエリ自体は複雑ではありません。次に例を示します。
このようなクエリの最短パスは次のとおりです。
DataContext の保持パス
私の質問は、この問題を回避する既知の方法はありますか? 使用されていないデータコンテキストでメモリがいっぱいになる以外に、それはまったく問題ですか?
c# - .Net 4.0 および EF6 のコンパイル済みクエリ置換
Asp.Net MVC
とで構築されたアプリケーションが.Net 4.0
ありEF6
ます。アプリケーションのパフォーマンスを向上させるために、さまざまな投稿に出くわし、アプリケーションのパフォーマンスを大幅に向上させるにはクエリをコンパイルする必要があることを知りました。
だから私は検索を続けcompiled query
、以下のように自分自身を書きました:
しかし、上記のクエリを実行すると、Error There is no implicit reference conversion from 'KEApplication.Models.EntityModel.KEEntities' to 'System.Data.Entity.Core.Objects.ObjectContext'.というエラーが表示されます。
繰り返しますが、いくつかの投稿、特にThis
を読んだ後、がおよびでサポートされていないanswer
ことを知ってがっかりしました。また、バージョン > 4 ではクエリの自動コンパイルが提供されていることも確認しましたが、私の場合は改善が見られませんでした。上記の構成のような機能を実現する他の方法はありますか?compiled queries
.Net 4
EF6
EF
compiled query
c# - コンパイルされたクエリを含む GenericDataRepository
多くのレイヤー (View、Model、DataAccess、Business) を持つ MVC プロジェクトがあり、DataAccessLayer で GenericDataRepository を使用しています。CompiledQueries を使用して GenericDataRepository のパフォーマンスを向上させたいと考えています。
これが私の GenericDataRepository で、シンプルにするための関数が 1 つだけあります...
これは、GenericDataRepository を使用して DB からデータをプルする BusinessLayer のコードです。
GetAllArticles() 関数を CompiledQueries に追加できますか? 誰もこれについて経験がありますか?
ここに私の文脈があります
c# - コンパイル済みクエリを呼び出すときに「System.InvalidOperationException: リーダーが閉じているときに読み取りを呼び出そうとする無効な試行」を修正する方法
コンパイルされたクエリを呼び出した後に ToList() を呼び出すと、時々 (!) 例外が発生します - System.InvalidOperationException: リーダーが閉じているときに Read を呼び出す試みが無効です。
DB コンテキストは「invoke」呼び出しごとに作成され、クエリは呼び出し前に同期的にコンパイルされます。コードのスニペットは one time pro file と呼ばれ、非同期で読み取られます。
クエリは、次の方法で初期化、コンパイル、および呼び出されます。
大量のデータで例外が発生します:
問題の原因は何ですか? 非同期操作に問題があることは認識していますが、どこで検索すればよいかわかりません。
どんな助けでも大歓迎です!