我正在尝试使用IFormFile
.. 这是我的 html上传多个文件
<input type="file" asp-for="lstAttachments" accept="application/pdf,application" multiple/>
lstAttachments
集合在哪里IFormFile
public IEnumerable<IFormFile> lstAttachments { get; set; }
我将文件保存到某个文件夹,然后将文件夹路径保存到数据库表。那工作得很好。
var filePath = "" ;
Guid guid;
List<userattachmentsdetail> attachmentsToInsert = new List<userattachmentsdetail>();
userattachmentsdetail newAttachment;
foreach (var file in userDetail.lstAttachments)
{
guid = Guid.NewGuid();
filePath = hostingEnv.WebRootPath + $@"\uploadedFiles" + $@"\{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);
}
在编辑模式下,我从该表中获取名称和路径并尝试加载文件
这是我从表中获取文件路径数据的查询
Select FileName, FilePath from userattachmentsdetail uad
在这里我将数据存储到列表
List<userattachmentsdetail> lstFiles = grid.Read<UserFiles>().ToList();
lstFiles
包含所有文件,但现在我不知道如何将此数据转换/复制到IFormFile
集合(lstAttachments)。
编辑文件内容可以是 pdf、文本或 docx。