当我注意到我的 foreach 循环无法上传文件列表并且 for 循环确实有效时,我正在我的网站上工作。我很想知道为什么 for 循环有效而 foreaches 循环无效。
我收到的错误消息是:无法将 system.string 转换为 xx。
所以这些是我有的循环:
HttpFileCollection documentsList = Request.Files;
// Doesn't
foreach (var file in documentsList.Cast<HttpPostedFile>())
{
var test = file;
}
// Doesn't
foreach (var file in documentsList)
{
var test = (HttpPostedFile)file;
}
// Works
for (int i = 0; i < documentsList.Count; i++)
{
var file = (HttpPostedFile) documentsList[i];
}
提前致谢!