これに関するいくつかの実用的なサンプルをグーグルで検索するのに丸2週間費やしました。コンクリートの壁に頭をぶつけそうになりました…今までずっと苦しんでいました。
OK、MS SQL Server の MsgLog という名前のテーブルから、Msg と MsgID などの 2 つの列を表示する単純な Web ページがあります。新しいメッセージ エントリをテーブルに挿入するストアド プロシージャがあります。(将来、既存のエントリを更新する可能性があります)
私の望みは、新しいメッセージ エントリが挿入されたとき、または既存のメッセージ エントリが更新されたときはいつでも、ユーザーがページ ボタンをクリックしたり、コード化されたタイマー機能を使用したりせずに、Web ページがこの変更を自動的に反映する必要があることです。です。ページの更新は、データベース テーブルの変更によってのみトリガーできます。
これを達成するために SqlCacheDependency を使用することに関する多くのインターネット投稿を読みましたが、完全な手順とコードを提供するものはありません。私は自分のプロジェクトで彼らのサンプル コードを微調整しようとしましたが、予想どおり、どれもうまくいきませんでした。それともこれを実装することは不可能ですか?
私の開発環境は次のとおりです。ASP.NET FRAMEWORK 4.0を使用するVisual Studio 2010プロフェッショナル、SqlCommandオブジェクトを含むSQLステートメントが埋め込まれたC#を使用するMVC 3アプリケーション、データベースはMS SQL Server 2008エンタープライズエディション、IISエクスプレスです。
SQLサーバーの設定からコーディングまで、実行可能な詳細な手順を完全に示してくれる天才がいますか。機能は、Web ページの 1 つのテーブルから 2 つの列を含む行を表示するのと同じくらい簡単で、テーブルが更新または挿入された場合にのみ変更をリアルタイムで反映します。ポーリングまたはタイマー技術を使用しない; LINQ to SQL ではなく、SqlCommand を使用します。
何百万人もありがとう。