4

我正在使用 .NET MVC。

当我返回new HttpResult(HttpStatusCode.NoContent);创建的对象时,状态码 = 200:

{ServiceStack.Common.Web.HttpResult}
    AllowsPartialResponse: false
    ContentType: null
    FileInfo: null
    Headers: Count = 0
    IsPartialRequest: false
    Options: Count = 0
    RequestContext: null
    Response: NoContent
    ResponseFilter: {ServiceStack.Common.Web.HttpResponseFilter}
    ResponseStream: null
    ResponseText: null
    Status: 200
    StatusCode: OK
    StatusDescription: null
    Template: null
    View: null

嗯..什么?

4

1 回答 1

6

如果要使用重载构造函数,则需要在构造函数中指定状态描述HttpStatusCode

如果您查看HttpResult的代码,您会看到您正在调用的构造函数是这样的:

public HttpResult(object response) : this(response, null) {}

您传入的HttpStatusCode对象实际上被用作响应(任何对象都可以是响应)。您应该在这里使用另一个构造函数:

public HttpResult(HttpStatusCode statusCode, string statusDescription)

IE

new HttpResult(HttpStatusCode.NoContent, "No Content");
于 2013-08-28T23:59:51.330 回答