C#中$ _FILES的等价物

时间:2010-07-30 21:55:38

标签: c# asp.net

C#中PHP的$ _FILES变量的等价物是什么?或者至少以相同方式访问文件的东西。我有一个无法更改的上传表单,需要了解如何获取这些文件。

3 个答案:

答案 0 :(得分:9)

请查看Request.Files,例如:

foreach (HttpPostedFile item in Request.Files)
{
    var filename = item.FileName;

    var fileBytes = new byte[item.ContentLength];
    item.InputStream.Read(fileBytes, 0, item.ContentLength);

    // fileBytes now contains the content of the file
    // filename contains the name of the file
}

答案 1 :(得分:2)

您将把HttpRequest个对象传递给您的处理程序,对吗?只需访问该对象的Files属性:

for (int i = 0; i < request.Files.Count; i++)
{
    var file = request.Files[i];
    // Do something with this file, for example:
    file.SaveAs(Path.Combine(someDirectory, file.FileName));
}

答案 2 :(得分:0)

您有时也可以使用HttpPostedFileBase参数(例如使用uploadify):

例如:

public ActionResult UploadPicture(HttpPostedFileBase fileData){
  img = Image.FromStream(fileData.InputStream, true, true);
}