相关疑难解决方法(0)

ASP.net MVC 4 WebApi - 测试MIME多部分内容

我有一个ASP.net MVC 4(beta)WebApi,看起来像这样:

    public void Post()
    {
        if (!Request.Content.IsMimeMultipartContent("form-data"))
        {
            throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
        }

        IEnumerable<HttpContent> parts = Request.Content.ReadAsMultipartAsync().Result;

        // Rest of code here.
    }
Run Code Online (Sandbox Code Playgroud)

我试图对这段代码进行单元测试,但无法解决如何做到这一点.我在这里走在正确的轨道上吗?

    [TestMethod]
    public void Post_Test()
    {
        MultipartFormDataContent content = new MultipartFormDataContent();
        content.Add(new StringContent("bar"), "foo");

        this.controller.Request = new HttpRequestMessage();
        this.controller.Request.Content = content;
        this.controller.Post();
    }
Run Code Online (Sandbox Code Playgroud)

此代码抛出以下异常:

System.AggregateException:发生一个或多个错误.---> System.IO.IOException:MIME多部分流的意外结束.MIME多部分消息未完成.在System.Net.Http.MimeMultipartBodyPartParser.d__0.MoveNext()在System.Net.Http.HttpContentMultipartExtensions.MoveNextPart(MultipartAsyncContext上下文)在System.Net.Http.HttpContentMultipartExtensions.MultipartReadAsyncComplete(IAsyncResult的结果)在System.Net.Http.HttpContentMultipartExtensions .OnMultipartReadAsyncComplete(IAsyncResult结果)

知道最好的方法是什么?

c# asp.net-mvc asp.net-web-api

4
推荐指数
1
解决办法
3490
查看次数

标签 统计

asp.net-mvc ×1

asp.net-web-api ×1

c# ×1