从ASP.NET Web API返回HTML

安德鲁斯:

如何从ASP.NET MVC Web API控制器返回HTML?

我尝试了下面的代码,但由于未定义Response.Write,因此出现了编译错误:

public class MyController : ApiController
{
    [HttpPost]
    public HttpResponseMessage Post()
    {
        Response.Write("<p>Test</p>");
        return Request.CreateResponse(HttpStatusCode.OK);
    }
 }
安德烈:

ASP.NET Core。方法1

如果您的控制器扩展了,ControllerBase或者Controller您可以使用Content(...)方法:

[HttpGet]
public ContentResult Index() 
{
    return base.Content("<div>Hello</div>", "text/html");
}

ASP.NET Core。方法2

如果选择不从Controller扩展,则可以创建new 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;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章