如何从ASP.NET MVC Web API控制器返回超文本标记语言?
我尝试了下面的代码,但得到了编译错误,因为Response.Write没有定义:
public class MyController : ApiController
{
[HttpPost]
public HttpResponseMessage Post()
{
Response.Write("<p>Test</p>");
return Request.CreateResponse(HttpStatusCode.OK);
}
}
发布于 2014-11-09 06:03:33
ASP.NET核心。方法1
如果你的控制器扩展了ControllerBase
或Controller
,你可以使用Content(...)
方法:
[HttpGet]
public ContentResult Index()
{
return base.Content("<div>Hello</div>", "text/html");
}
ASP.NET核心。方法2
如果选择不从Controller
类进行扩展,则可以创建新的ContentResult
[HttpGet]
public ContentResult Index()
{
return new ContentResult
{
ContentType = "text/html",
Content = "<div>Hello World</div>"
};
}
旧版ASP.NET MVC Web API
返回媒体类型为text/html
的字符串内容
public HttpResponseMessage Get()
{
var response = new HttpResponseMessage();
response.Content = new StringContent("<div>Hello World</div>");
response.Content.Headers.ContentType = new MediaTypeHeaderValue("text/html");
return response;
}
https://stackoverflow.com/questions/26822277
复制相似问题