2

時々(ランダムに)私のasp.net mvcアプリケーションは、画像に示されているように、単一の文字が奇妙な疑問符に置き換えられているページを出力します

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

この動作は、データが変更されるまで一定であり、ページの更新によって消えることはありません。ページ全体がジョージア語のユニコードです。VisualStudio2010とIISExpressでasp.netmvc3を使用しています。これは、IIS7.5に公開されたサイトでも確認されています。asp.netwebformsアプリケーションでも同様の問題が発生しています。

この動作は、dbが提供するデータだけでなく、htmlヘルパーで生成された単純なアンカーでも観察されています。

TagBuilder addAnchor = new TagBuilder("a");
addAnchor.AddCssClass("add-item");
addAnchor.MergeAttribute("href", "#");
addAnchor.SetInnerText(SharedResources.Add); //resource item contains string დამატება

アンカー「დამატ���ბა」を出力する

また、生の応答にはすでにこれらの記号が含まれているため、これはブラウザ側のページレンダリングでは問題になりません。

アップデート:

どうやら、設定してバッファ出力を無効にすると、Response.BufferOutput = false;ページから変な文字が削除されます。しかし、私はバンドルの参照にカセットを使用しており、無効になっているバッファ出力では機能しません。ページで参照されるsciptsやスタイルシートはありません。

あなたの誰かが同様の問題を抱えていましたか?これは私にとって実際に重要です。現在、破損している単一の文字が複数選択のテスト質問の正解情報であるデータに影響を与えるためです。

4

3 に答える 3

3

同じバグがありました。これは、結果のHTMLコンテンツを書き換える(そしてBufferOutputをtrueに設定する必要がある)機能を備えたCassetteであり、必要に応じて参照されるスクリプトとスタイルシートのタグを一番上に移動します。http://getcassette.net/documentation/configurationIsHtmlRewritingEnabledオプションを参照してください。この機能をオフにすると、バグはなくなりました。

私の観察:

  1. リモートリクエストでのみ表示されます。ローカルリクエストは常に問題ありません。
  2. 疑問符の位置は、すべてのクライアント、ブラウザ、およびコンピュータで常に一定です。
  3. 疑問符の位置は、アプリケーションの再コンパイル後にのみ変更されます。
于 2012-08-24T11:50:57.927 に答える
0

キャラクターセットと関係があると思います。特定の文字セットに含まれていない文字を表示しようとしたときに、この問題が発生しました。

たとえば’ or – (’ or –)、UTF-8で、文字が以前にHTMLエンコードされていない場合。

于 2012-04-26T08:49:33.873 に答える
0

私もこのような出力がありました。私の場合、エラーの原因はViews/web.config内にありました。アセンブリがページ/名前空間にリストされましたが、参照されているアセンブリの一部ではありませんでした

于 2014-09-15T11:10:30.820 に答える