ASP.NET 2.0 hält immer wieder Überraschungen bereit. So bin ich gerade über eine neue Funktion des Response Objektes gestolpert.
Wenn man Dateien zum Client senden will ohne dem Benutzer direkten Zugriff auf diese Datei zu gewähren, wurde bisher oft die Funktion WriteFile verwendet. Damit schreibt man eine Datei über einen Memorystream direkt in den HTTP Stream. Dies wird vor allem meist aus Sicherheitsgründen gemacht oder um Texttemplates in bestehende Seiten einzubinden.
IN 2.0 gibt es nun eine Funktion TransmitFile die dies sozusagen seriell ohne Umweg direkt von der Platte zum Client sendet. Gerade für größere Dateien sicher eine überlegenswerte Option.
Response.TransmitFile("datei.txt") |
Wenn die Datei allerdings größer als 2 GB ist sollten Sie folgenden Hotfix lesen und anwenden:
http://support.microsoft.com/?kbid=902780