2017-05-06 2 views
1

Ich versuche, mehrere Dateien hochladen IFormFile mit .. das ist mein html istanzeigen gespeicherten Dateien in mvc mit dot net Kern

<input type="file" asp-for="lstAttachments" accept="application/pdf,application" multiple/> 

wo lstAttachments ist eine Sammlung von IFormFile

public IEnumerable<IFormFile> lstAttachments { get; set; } 

I Ich speichere Dateien in einem Ordner und dann den Pfad des Ordners zur Datenbanktabelle. Das funktioniert einwandfrei.

var filePath = "" ; 
Guid guid; 
List<userattachmentsdetail> attachmentsToInsert = new List<userattachmentsdetail>(); 
userattachmentsdetail newAttachment; 
foreach (var file in userDetail.lstAttachments) 
{ 
     guid = Guid.NewGuid(); 
     filePath = hostingEnv.WebRootPath + [email protected]"\uploadedFiles" + [email protected]"\{guid}_{file.FileName}"; 

     using (FileStream fs = System.IO.File.Create(filePath)) 
     { 
      file.CopyTo(fs); 
      fs.Flush(); 
     } 

     newAttachment = new userattachmentsdetail(); 

     newAttachment.FileName = file.FileName; 
     newAttachment.FilePath = filePath; 
     attachmentsToInsert.Add(newAttachment); 

    } 

Im Bearbeitungsmodus, ich Namen und Pfad von diesem Tisch zu bekommen und versuche, Dateien

laden Dies ist meine Abfrage Dateipfad Daten aus der Tabelle

Select FileName, FilePath from userattachmentsdetail uad 

Und hier zu bekommen ich bin Speichern von Daten

List<userattachmentsdetail> lstFiles = grid.Read<UserFiles>().ToList(); 

lstFiles enthalten alle Dateien auflisten, aber jetzt bin ich fest, dass, wie die Zusammenarbeit nvert/kopiert diese Daten in IFormFile Sammlung (lstAttachments).

Bearbeiten Dateien Inhalte können PDF, Text oder docx sein.

+0

Wie sehen die Dateien aus? Wie sieht IFormFile aus? – Alex

+0

Sorry, hast du nicht verstanden ?? –

+0

Was ist der Inhalt der Dateien, und veröffentlichen Sie Ihren Code für IFormFile und seine Implementierung. Es gibt nicht genug Informationen in dieser Frage, um überhaupt zu helfen. – Alex

Antwort

0

Sie nicht.

IFormFile

Stellt eine Datei mit dem Httprequest gesendet.

Es soll immer nur eine eingehende Datei darstellen.

Für Ihre Bearbeitungsfunktion müssen Sie nur die Datei, die Sie gespeichert haben, überschreiben, wenn sie vom Endbenutzer geändert wird.

+0

Okay, danke .. Aber warum so viel davon abwinken? –