0

aspx ページを作成して Firefox で表示したところ、正しく動作し、コードが実行されました。しかし、ページに変更を加えると (すべてを削除して空白のページを提供するなど)、Firefox は元のコンパイル済み aspx ページを表示し続けます! 新しいページを表示するにはどうすればよいですか?

次のコードも追加しましたが、それでも元のページが読み込まれます。

<script runat="server">
Sub Page_Load
    Random rd = new Random();
    Response.AddHeader("ETag", rd.Next(1111111, 9999999).ToString());
    Response.AddHeader("Pragma", "no-cache");
    Response.CacheControl = "no-cache";
    Response.Cache.SetNoStore();
    Response.Expires = -1;
End Sub
</script>

Firefox のキャッシュもクリアしましたが、それでも元のバージョンが読み込まれます。

編集: 問題は ASP.Net 側にあるようです。Chromeでも変更されていません。では、再コンパイルを強制するために aspx ファイルを強制的に変更するにはどうすればよいですか?

4

3 に答える 3

0
  • キャッシュをリロードしてオーバーライドするさらに別の方法CTRL + F5
  • また、ASP.Netアプリケーション/サイトをどのように開発しているかによっても異なります。
    • 変更を加えた後、再度表示する前に再コンパイルしますか?

を構築している場合は、サーバー側のコードに加えた変更を反映するように(Visual Studioで)アプリケーションを再構築web applicationする必要があります。これは「ASP.Netの問題」ではなく、標準です。再構築せずにHTML(クライアント側)に変更を加えることができますが、サーバーコードを変更するには、再構築(dllを再コンパイル)する必要があります。

ただし、上記のサンプルコードは、ファイル(つまり、foo.aspx.vbまたはfoo.aspx.cs)がない場合のようにin-line、コードのように見えます-すべてのコードですか?in-linecode behind

上記はすべてローカル開発に基づいています-明らかに、「本番」/ライブサイトを表示している場合は、ローカルで行った変更に関係なく、「プッシュ」/「公開」/アップロード/更新する必要があることは言うまでもありません。 。

于 2012-12-18T04:05:08.687 に答える
0

問題はFirefox関連ではなく、ASP.Net Webサーバーにあるようです(Chromeでも発生するため)、別の質問をしたので、これを閉じます。

于 2012-12-18T05:18:19.560 に答える
0

次のコードで運が良かった:

// Stop Caching in IE
Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache);

// Stop Caching in Firefox
Response.Cache.SetNoStore();

また、キャッシュ防止コードを追加する前に、ブラウザーが既にキャッシュしている可能性があります。その場合は、Firefox で CTRL-SHIFT-R を押してキャッシュをヒットせずに強制的にリロードし、Firefox がキャッシュされたページのコピーを保存することにまだ問題があるかどうかを確認してください。

于 2012-12-18T01:35:40.737 に答える