file.readallTextおよびマスターページの動作
-
11-10-2019 - |
質問
マスターページで使用する場合
File.ReadAllText
文字通りの文字列として、テキストファイルからテキストをロードする。
マスターページに応じてコンテンツページをロードすると、コードは常にテキストファイルを開き(コンテンツページリクエストごとに)読み取ります。テキストファイルはマスターページに1回だけキャッシュされますか?
御時間ありがとうございます
解決
キャッシュされません。コンパイルされたマスターページでは、コンピレーション時間に作成したコードを実行しないでください。
たとえば、次のこと:
<div><%= File.ReadAllText( someFile ) %></div>
次のように本質的に同じものにコンパイルされます。
builder.Append("<div>").Append( File.ReadAllText( someFile ) ).Append( "</div>" )
このマスターページがロードされるたびに実行されます。
他のヒント
あなたのアプリケーションはファイルを複数回読み取ると思います。しかし、OSはおそらくRAMでファイルをキャッシュする可能性が高いため、頻繁に読むときは高速になるはずです。
または、アプリケーションのキャッシュに入れてください。ただし、「ポリシーのないキャッシュはメモリリーク」を覚えておいてください。したがって、キャッシュから古いエントリを削除する手順が必要になる場合があります。
所属していません StackOverflow