我有一個HTML頁面上的表單,用戶需要用它來上傳文件發佈到ASPX頁面。在後面的代碼中,我想測試一個文件是否已經被加載。HTTPRequest.Files.Count永不等於零
if (Request.Files.Count > 0)
{
DoStuff(Request.Files[0]);
}
else
{
throw new Exception("A CSV file must be selected for upload.");
}
我從來沒有去過別人。這是ASP.NET如何運作?如果我有一個文件類型的輸入元素,即使沒有選擇文件,它是否總是會上傳一個「文件」?
這樣做的正確方法是什麼?也許這個?
if (Request.Files.Count > 0 && Request.Files[0].ContentLength > 0)
{
DoStuff(Request.Files[0]);
}
else
{
throw new Exception("A CSV file must be selected for upload.");
}
不幸的是,如果你完全訪問Files屬性,你不能隨後調用Request.GetBufferlessInputStream:「調用HttpRequest.Form,Files,InputStream或BinaryRead後,此方法或屬性不受支持」 – dudeNumber4 2014-10-03 19:44:46
@ dudeNumber4所以選擇的答案不正確?我現在沒有Visual Studio在這臺計算機上進行調查。 – kzh 2014-10-03 20:00:24
嗯,這對我來說是不正確的,因爲我需要訪問該方法以分塊(大)上傳的文件,所以他們不會如果你不需要訪問那個方法,我想你沒問題。 – dudeNumber4 2014-10-06 14:54:38