< v3.05 之前的版本中存在一个错误,在某些情况下不尊重 HttpResult ContentType,现在应该使用 NuGet 上的最新版本的 ServiceStack 修复它,或者从以下位置获得:
https://github.com/ServiceStack/ServiceStack/downloads
在此之前,您仍然可以通过更改 HttpClient 上的Accept:application/json请求标头或在 url 的查询字符串上附加?format=json来强制所需的 ContentType。
因此,现在如果您不想序列化任何 DTO,请不要将其添加到 HttpResult:
return new HttpResult() { StatusCode = HttpStatusCode.Created };
请注意,如果在浏览器(或任何接受:text/html 的 Rest 客户端)中调用此服务,您仍然可能会得到一个空的 Html 响应。如果ContentType具有空负载(例如 JSON/JSV),您可以通过在结果中指定它来强制它不会输出任何响应,例如;
return new HttpResult() {
StatusCode = HttpStatusCode.Created,
ContentType = ContentType.Json
};