2013-12-09 6 views
6

Ich habe eine asp.net FileUpload-Steuerelement. Ich kann Datei erfolgreich laden in der Sitzung zu speichern, aber wenn ich Tring seine Input zu bekommen (Ich bin Speicherdatei in HttpPosterFile) Ich bin Fehler immerGetting "Kann nicht auf eine geschlossene Datei zugreifen" errormessage beim Abrufen der Datei aus der Sitzung

Kein Zugriff auf eine geschlossene Datei

tr.PostedFile //<== HttpPostedFile; 
byte[] byteArray = null; 
using (var binaryReader = new BinaryReader(tr.PostedFile.InputStream)) 
{ 
    byteArray = binaryReader.ReadBytes(tr.PostedFile.ContentLength); 
} 
+4

Wäre es nicht besser, nur das Byte-Array von Dateidaten in Sitzung statt der HttpPostedFile mit dem Stream zu speichern? – Paddy

Antwort

1

Haben Sie using verwendet?

Wenn ja, achten Sie darauf, diese nicht zu schließen, bevor Sie die Zeichenfolge in den Eingangsstrom setzen.

+0

tr.PostedFile <== HttpPostedFile; byte [] ByteArray = null; mit (var binaryReader = neuer BinaryReader (tr.PostedFile.InputStream)) { byteArray = binaryReader.ReadBytes (tr.PostedFile.ContentLength); } ; Das ist mein Code – Jaztingo