0

在我的控制器中,我使用下面的代码来处理多部分表单数据:

    string root = HttpContext.Current.Server.MapPath("~/App_Data");
    if (!Directory.Exists(root))
    {
        throw new QLApplicationException("Error ...");
    }
    MultipartFormDataStreamProvider provider = new MultipartFormDataStreamProvider(root);
     Task<HttpResponseMessage> task = Request.Content.ReadAsMultipartAsync(provider).ContinueWith<HttpResponseMessage>

这很好用,只是它只将表单数据保存到 /App_Data 的文件中。然而,我需要的是在我的程序中将数据放入一个字符串中,这样我就不必再次从文件中读取它。我怎样才能做到这一点?提前致谢!

4

1 回答 1

1

只是为了澄清,MultipartFormDataStreamProvider只将任何上传的文件保存到文件系统中。如果您正在寻找访问表单值,您可以provider.FormData获取它们。

如果您希望在内存中访问上传的文件本身而不将其保存为驱动器上的文件,那么您可以使用MultipartMemoryStreamProvider它将传入请求的所有上传部分读取到内存中。您可以通过访问HttpContents提供程序上的属性来访问这一部分。

于 2013-06-12T00:03:15.977 回答