Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在WebAPI的HTTP OK上从JSON格式化程序返回有效的JSON_C#_Asp.net Mvc_Asp.net Web Api - Fatal编程技术网

C# 在WebAPI的HTTP OK上从JSON格式化程序返回有效的JSON

C# 在WebAPI的HTTP OK上从JSON格式化程序返回有效的JSON,c#,asp.net-mvc,asp.net-web-api,C#,Asp.net Mvc,Asp.net Web Api,我使用WebAPI进行各种REST调用,并一直使用它(当我不需要数据时) 返回新的HttpResponseMessage(HttpStatusCode.OK) 然而,由于有一个突破性的变化,需要始终发送JSON,因此我需要进行一些如何更新,以代替NULL发送{} 有没有更好的方法返回带有有效JSON的OK消息,目前它只返回一个空字符串(NULL) 注意:如果用户接受类型请求,我仍然希望保留返回XML的可能性,因此我认为我需要使用格式化程序或使用非HttpResponseMessage 不确定这里

我使用WebAPI进行各种REST调用,并一直使用它(当我不需要数据时)

返回新的HttpResponseMessage(HttpStatusCode.OK)

然而,由于有一个突破性的变化,需要始终发送JSON,因此我需要进行一些如何更新,以代替
NULL
发送
{}

有没有更好的方法返回带有有效JSON的OK消息,目前它只返回一个空字符串(
NULL


注意:如果用户接受类型请求,我仍然希望保留返回XML的可能性,因此我认为我需要使用格式化程序或使用非
HttpResponseMessage

不确定这里的最佳实践是什么,可能是ASP.NET Web API团队的人可以回答的,但这是可行的

public HttpResponseMessage Get()
{
    return Request.CreateResponse<object>(HttpStatusCode.OK, new object());
}
public HttpResponseMessage Get()
{
return Request.CreateResponse(HttpStatusCode.OK,new object());
}
试试这个

return new HttpResponseMessage(HttpStatusCode.NoContent);  // 204 Status Code
这就是你应该如何表明将有身体内容。jQuery应该尊重这一点


我做了一些搜索,事实上,这是5个月前在提交中的jQuery中完成的。

实际上您只需要:return Request.CreateResponse(HttpStatusCode.OK,new object());您的jQuery调用是什么样子的-也许这是一个更好的地方来改变事情,而不是以一种丑陋的方式修改响应?