Frage

wenn ich in einer Master-Seite verwenden

File.ReadAllText 

einen Text aus einer Textdatei zu laden, als String in einem Literal.

Wenn ich den Inhalt Seite lädt je nach meiner Master-Seite wird den Code öffnen und die Textdatei alle mal gelesen (für jede Content-Seite Anfrage) oder die Textdatei wird nur einmal in der Master-Seite im Cache gespeichert werden?

Vielen Dank für Ihre Zeit

War es hilfreich?

Lösung

Es wird nicht zwischengespeichert werden. Masterseiten selbst kompiliert nicht ausführen Sie den Code in ihnen bei der Kompilierung geschrieben haben.

Zum Beispiel der folgenden:

<div><%= File.ReadAllText( someFile ) %></div>

wird im Wesentlichen die gleiche wie die folgenden zu etwas kompiliert werden:

builder.Append("<div>").Append( File.ReadAllText( someFile ) ).Append( "</div>" )

, die jedes Mal in dieser Master-Seite geladen wird ausgeführt werden.

Andere Tipps

Ich denke, die Anwendung die Datei mehrmals gelesen wird. Aber das Betriebssystem wird höchstwahrscheinlich die Datei im RAM-Cache, so sollte es schnell sein, wenn es oft zu lesen.

Alternativ setzt es nur in einem Cache in Ihrer Anwendung. Aber denken Sie daran „Ein Cache ohne Politik ist ein Speicherleck“, so dass Sie eine Prozedur benötigen könnten alte Einträge aus dem Cache zu entfernen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top