所以,我有一个项目,我检查用户上传的pdf文件,然后生成警告。
如果我们有警告,用户将被重定向到他必须上传文件的页面。我向他展示了出现的警告,如果他愿意的话,我可以选择继续上传,忽略警告。
在该情况下,用户必须重新上传相同的文件并勾选checkbox
确认即使有警告也要继续。
我想要做的是:保存上传的文件,以便用户不必重新上传pdf。
我认为使用类似FileInfo
对象的东西,但我不知道在[HttpGet]
部分使用它。
来自[HttpPost]
的部分代码,我生成警告并尝试保存文件。
if (pdfvalidationresult.Warnings.Any())
{
TempData["FileName"] = file.FileName;
file.InputStream.Seek(0, SeekOrigin.Begin);
var filePath = Path.ChangeExtension(
Path.Combine(Settings.Default.FilesDirectory,
Path.Combine("temp"), orderId.ToString()), ".pdf");
FileInfo temporaryFile = new FileInfo(filePath);
TempData["Existance"] = temporaryFile;
using (var fileStream = new FileStream(filePath, FileMode.CreateNew))
file.InputStream.CopyTo(fileStream);
TempData["warnings"] = pdfvalidationresult.Warnings;
if (ignoreWarnings == null || ignoreWarnings != true)
{
ModelState.AddModelError("", "We Have Warnings!");
}
}