ASP.NET MVC4 Web アプリケーションに問題があります。
当社の Web アプリケーションは、さまざまな産業用デバイスの値とパラメータのリアルタイム データ視覚化に使用されます。通常の監視ページがクライアントのブラウザで開かれると、ページ自体は最初は静的です。ドキュメントの読み込みが完了すると、このページのデータポイントの現在の値が、データベースからの ajax 呼び出しによって読み込まれます。この呼び出しは、viewmodel にフィードする JSON データを返します。これは、Knockout.js によって使用され、UI 要素をデータで更新します。
この現在のデータの初期ロードの後、現在表示されているデータポイントのいずれかに対する今後の変更は、WebSocket プロトコルを介してサーバーからページに送信され、ビューモデルに配置されて古い値が置き換えられます。また、新しいデータはすぐにデータベースに書き込まれるため、ajax 呼び出しは常に最新の値を提供します。
これまでのところ、Internet Explorer 10 を除くすべての HTML5 対応ブラウザーで、すべてが非常に安定して高速に動作します。
問題の詳細:
いくつかのデータポイントを含む特定のページを開くと、ページが読み込まれます。現在の値は、ajax を使用して DB から正しくフェッチされます。次に、新しい値が到着し、上記のメカニズムで正しく表示されます。UI の値が更新されます。
ここで、別のページに変更し、完全に読み込まれるのを待ってから、最初のページに戻ります ([戻る] ボタンを使用するか、リンクをクリックするか、URL を入力するかは関係ありません)。手動)、ページには現在の値は表示されませんが、ajax を介してステップ 1 で最初に読み込まれた値が表示されます。
紛らわしいのは、データベースにはページに表示されている値ではなく最新の値が含まれていることを確認したため、最初のページに戻ったときに最初の ajax 呼び出しで読み込まれているはずです。面倒なこと: それらは Firefox、Chrome、さらには IE9 などでも読み込まれますが、IE10 では読み込まれません。
IE10 に新しいキャッシュ メカニズムはありますか? この問題を解決するにはどうすればよいですか? それに加えて、私が見る限り、ここで何らかのAjax/JSONキャッシングが行われているようです.ASP.NET MVC4プロジェクトまたはIISでHTMLおよびJSONキャッシングを完全に/グローバルに確実に禁止する方法はありますか?
ご協力いただきありがとうございます!