2017-03-07 4 views
1

Ich arbeite an einem einfachen Code zum Hochladen mehrerer Dateien mit einzelnen Upload-Taste (AllowMultiple="true"), und ich versuche, alle hochgeladenen Dateien zur Liste hinzuzufügen, aber das Problem ist nur die erste Datei ohne hinzugefügt wird die anderen Dateien.C# Hinzufügen mehrerer Dateien zur Liste

asp.net

<asp:FileUpload runat="server" ID="file1" AllowMultiple="true" /> 

C#

PdfReader pdfReader1 = new PdfReader(file1.PostedFile.InputStream); 
List<PdfReader> readerList = new List<PdfReader>(); 
readerList.Add(pdfReader1); 
+0

Das ist, weil Sie einen Leser für Sie Leser hinzugefügt haben Liste. Sie möchten wahrscheinlich Dateien mit dem Reader lesen. – Reniuz

+0

Vielleicht wird dies helfen: http://StackOverflow.com/questions/17441925/How-to-choose-multiple-files-using-file-upload-control –

+0

Erstens, AllowMultiple = "True" ist eine. NET 4.5-Eigenschaft. Bist du sicher, dass du es hast? Unter 4.5 war etwas wie Multiple = "Multiple" (check auf der MSDN). Zweitens: Sie müssen die Datei1.PostedFiles-Auflistung verwenden, um alle Dateien abzurufen. – AFract

Antwort

3

Mit PostedFile Sie nur ein Element zu erhalten, verwenden PostedFiles statt:

List<PdfReader> readerList = new List<PdfReader>(); 
readerList.AddRange(file1.PostedFiles.Select(f=>new PdfReader(f.InputStream))) 
+0

OP: Stellen Sie sicher, dass Sie die Leser schließen/entsorgen, nachdem Sie mit ihnen fertig sind. –

+0

@Maksim Simkin das, was ich suchte, danke Mann. – azza

Verwandte Themen