問題タブ [sqlcachedependency]

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.

0 投票する
1 に答える
1827 参照

asp.net - データベースのデータが変更されたときのページの自動更新

マイページは を使用していsqlcachedependencyます。そのため、ページはデータベース内のデータが変更されるまでキャッシュから情報を読み取りますが、データが変更されたときにページが自動更新される必要があります。どうやってやるの?

0 投票する
1 に答える
476 参照

asp.net - データベーススキーマが変更された場合のSqlCacheDependencyおよびBrokerServiceへの影響

SQLキャッシュ依存関係を持つアプリケーションを作成しています。

このために私はブローカーを有効にしました

データベースに2つの新しいテーブルを追加した後。

しかし、追加した新しいテーブルの通知サービスを利用できないことがわかりました。

私も使っています

このコマンドは実行を続けるので、成功せずにキャンセルします。

私が欠けているものを特定していただけますか

どんな助けも認められます

0 投票する
1 に答える
1622 参照

asp.net - ビューとプロシージャの SqlCacheDependency

ビューとプロシージャで SqlCacheDependency を使用したいと考えています。

Linq to Sqlを使用しています。

現在使用しているコードは、単一テーブルを使用している場合にのみ有効です:

ここで、ビュー (複数のテーブル) に sqlcachedependency を実装したいと考えています。

このクエリを使用しようとしています

ただし、基になるテーブルを変更してもキャッシュが無効にならないため、このクエリは機能しません。

あまりにも長い間グーグル検索しましたが、ビューとプロシージャまたは複数のテーブルで機能するコードが見つかりません。

0 投票する
2 に答える
615 参照

c# - Linq to Entityを使用してビューの基になるテーブルを検索し、依存関係を集計します

私は機能を持っています:

qは、テーブル、ビュー、またはプロシージャにすることができます。

私が欲しいのは、ビューまたはプロシージャに関連付けられている基になるテーブルを見つけることです。

qが2つのテーブルの結合である場合のように、両方のテーブルの名前を取得し、最後に

次のように実行します。

tw0テーブルがある場合は、AとBと言います

次に、次のような集計依存関係を作成する必要があります。

次に、実行したいクエリは

Aから*を選択します。Bから*を選択します。

これは、LinqtoEntityを使用してSqlCacheDependencyに使用しています。

基になるテーブルをハードコーディングするとビューに適していますが、コードが基になるテーブルを自動的にチェックするようになりました

のような非クエリを実行します

集約された依存関係を作成します。

どんな助けでも大歓迎です。

ありがとう。

0 投票する
1 に答える
509 参照

asp.net - ASP.NETの列固有のSqlCacheDependency

列固有のSqlCacheDependencyが必要です。

行固有SqlCacheDependencyは有効ですが、列固有にする方法がわかりませんSqlCacheDependency

例:

クエリ:

ID=31167の行が変更された場合に通知を発生させます。

しかし、問題は、その行の列のいずれかが変更されるとキャッシュが無効になることですが、ID31167の価格が変更れた場合にのみキャッシュが無効になるようにしたいです

私は長い間それをグーグルで検索しましたが、助けが得られません。

ありがとう

どんな助けでも大歓迎です。

0 投票する
2 に答える
352 参照

c# - LINQ2SQLを使用したSqlCacheDependency(リポジトリパターン)

ASP.Net3.5WebアプリでL2Sリポジトリパターンを使用しています。しかし、私はライブで経験したようなパフォーマンスにはあまり満足していません。私はグーグルを検索し、SqlCacheDependencyクラスを使用してSQLキャッシングに出くわしました。しかし、私のシナリオでそれを使用する方法を説明するチュートリアルやリンクはありません。

だから私を助けてください...どんな助けやガイダンスも大歓迎です。

いくつかのサンプルコードまたはオンラインリファレンスを使用してください。

前もって感謝します

更新:私のリポジトリ

0 投票する
1 に答える
490 参照

c# - SqlCacheDependency には OnChange イベントがないようです。

いくつかのデータ オブジェクトをキャッシュしようとしています。これらのデータ オブジェクトは非常に頻繁に使用されるため、db サーバーをロードする際に頻繁にクエリが実行されます。ただし、これらは頻繁に変更されるわけではないため、キャッシュの候補として適しています。

ただし、それらが変更されるたびに、変更をできるだけ早く反映したいので、SqlCacheDependency を使用することを考えました。

ただし、Visual Studio で次のエラーが発生します。

Visual Studio のエラー ヒント

私がチェックしたところ、人々はどこでも SqlCacheDependency ではなく SqlDependency を使用しているように見えました。OnChange イベントが SqlCacheDependeny から除外されたのはなぜですか? パフォーマンスに悪いですか?それとも、ここで非常に基本的な何かが欠けているだけですか。

0 投票する
1 に答える
77 参照

asp.net - dbのクエリに使用したものと同じクエリをSqlCacheDependencyに指定する必要がありますか?

以下のようなクエリを使用して、大きな結果セットを取得するとします。

ここで、クエリによって返された各オブジェクトをキャッシュし、オブジェクトが変更されたときにそのオブジェクトを無効にします。したがって、上記の結果セットの各結果をユーザーオブジェクト(DTO)にキャストし、それらをキャッシュに追加するときに、次のように依存関係を追加します。

しかし、これはうまくいかないようです。sys.dm_qn_subscriptionsにレコードはありません。イベントログにエラーはもうありません(昨日取得し、それらを解決するために適切な手順を実行しました)Sql Profilerを見ると、SqlQueryNotificationストアドプロシージャが約2分ごとに実行されていることがわかります。

では、なぜ依存関係が作成されなかったのでしょうか。別のクエリを使用して依存関係を作成しているためですか?

0 投票する
1 に答える
1309 参照

asp.net - SqlCommandを使用したSqlCacheDependencyが機能しない

非常に基本的なSqlCacheDependencyプロトタイプの実装に問題があります。

sprocでこれを試しましたが、今はコマンドを直接実行しています。

そして、私はすべてのオブジェクトのデータセットを読み取り、手動で挿入したいくつかのデータに対して非常に単純な依存関係テストを作成しています。

「マスターキー」は、集約キャッシュの依存関係をテストするためにあります。これを変更するとうまくいきますが、1(変数scd)へのSQLの依存関係は単に機能しません。テーブルを更新して(行を削除しても)何も起こらず、キャッシュはクリアされません。

ここに画像の説明を入力してください

SQL依存関係が登録/起動されない理由に関するアイデアは大歓迎です!

0 投票する
3 に答える
1981 参照

c# - SqlCacheDependency HasChanged が true に変更された直後に false に戻るのはなぜですか?

HasChangedオブジェクトの値がコマンドの実行から最初に false として返される理由がわかりませんSqlCacheDependencyが、データベースから返された直後のどこかで、値が true に変わります。

アイテムがキャッシュに挿入される前にこれが発生し、キャッシュがすぐにアイテムを破棄することもあれば、挿入後であることもあります。キャッシュ内のキーを参照する列挙子を取得できますが、そのアイテムにループする前です。キャッシュは削除されました。

SPROC:

データベースは MS SQL Server 2008 で、ブローカー サービスが有効で、一部の出力がキャッシュされ、キャッシュされたままになります。たとえば、これは問題なく機能します。

失敗した問題の SPROC を呼び出すコード:

動作するコード

メソッドがオーバーロードされており、AddToCacheさらに多くのテストが含まれています。作業方法の直接的な_cache.Insert方法は、これらの他のテストをバイパスすることです。作業コードは、db キャッシュが発生するかどうかを判断するのに役立ちます。

「動作していない」データが最初に取得されると、すべて問題ないことがわかります。

ここに画像の説明を入力

しかし、そのポイントを超えたランダムな場所、この例では、次のメソッドにステップインするだけです

ここに画像の説明を入力

それでも、データはまったく変更されていません。データベースのこのインスタンスに触れているのは私だけです。