Asp.Net 4.5 Web API - 返回HTTP状态码207

时间:2012-09-06 12:43:02

标签: c# asp.net asp.net-web-api

我正在尝试创建一个简单的Web API控制器来充当WebDAV服务器,因为我只希望它允许目录列表和对文件的读取访问,以及与我们系统中的当前身份验证系统集成

在使用WebDAV客户端(DAVExplorer)时,我设法让目录和文件列表正常工作,但是在Windows资源管理器中映射网络驱动器只是不打球。

虽然我没有弄清楚为什么这不起作用,但有一种可能性是当WebDAV服务器返回PROPFIND请求的结果时,它会使用Http状态代码207多状态。这似乎不在HttpStatusCode对象使用的HttpResponseMessage枚举器中。

我试图找出实际上将HttpResponseMessage转换为返回到浏览器的响应,认为我可以实现自己的版本并处理自己输出状态代码,但我没有任何到目前为止好运。

有人对我如何实现一个返回207状态代码的API控制器有任何建议吗?

1 个答案:

答案 0 :(得分:7)

您可以将int投射到HttpStatusCode

public HttpResponseMessage Get()
{
    var response = Request.CreateResponse((HttpStatusCode)207, "something");
    return response;
}