我已经使用此代码来上传带有MVC的文件。试图上传文件的MVC问题
<form method="post" enctype="multipart/form-data" action="/Task/SaveFile">
<input type="file" id="FileBlob" name="FileBlob"/>
<input type="submit" value="Save"/>
<input type="button" value="Cancel" onclick="window.location.href='/'" />
</form>
但是,当询问形式[“FileBlob”]是空当我浏览一个文件,并提交表单????
马尔科姆
编辑:我添加了一个文本框的形式,我可以得到该值的罚款。只是输入类型文件不工作?
bool errors = false;
//this field is never empty, it contains the selected filename
if (string.IsNullOrEmpty(forms["FileBlob"]))
{
errors = true;
ModelState.AddModelError("FileBlob", "Please upload a file");
}
else
{
string sFileName = forms["FileBlob"];
var file = Request.Files["FileBlob"];
//'file' is always null, and Request.Files.Count is always 0 ???
if (file != null)
{
byte[] buf = new byte[file.ContentLength];
file.InputStream.Read(buf, 0, file.ContentLength);
//do stuff with the bytes
}
else
{
errors = true;
ModelState.AddModelError("FileBlob", "Please upload a file");
}
}
if (errors)
{
return ShowTheFormAgainResult();
}
else
{
return View();
}
}