问题描述
我们知道,在ASP.NET Web Api的控制器中,可以返回各种类型的结果,如:XML,JSON,文件类型等,甚至有时候需要返回不带双引号的纯文本字符串。如果直接使用Ok()
方法,返回结果中会有双引号,如:
public IHttpActionResult Get()
{
return Ok<string>("hello world");
}
返回结果为:
"hello world"
但想要得到的返回结果是:
hello world
在ASP.NET Web Api开发中,应该如何实现返回不带双引号的纯文本字符串呢?
方案一
在控制器的Action
方法中,使用HttpResponseMessage
作为返回类型,在方法中指定响应(response)的媒体类型(media type)为text/plain
,实现代码如下:
public HttpResponseMessage Get()
{
string result = "hello world";
var response = new HttpResponseMessage(HttpStatusCode.OK);
response.Content = new StringContent(result, System.Text.Encoding.UTF8, "text/plain");
return response;
}
输出:
hello world
这样,ASP.NET Web Api 返回的结果即为不带双引号的纯文本字符串了:
版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。
发表评论
登录用户才能发表评论, 请 登 录 或者 注册