Bagaimana cara mengembalikan HTML dari pengontrol API Web ASP.NET MVC?
Saya mencoba kode di bawah ini tetapi mendapat kesalahan kompilasi karena Response.Write tidak ditentukan:
public class MyController : ApiController
{
[HttpPost]
public HttpResponseMessage Post()
{
Response.Write("<p>Test</p>");
return Request.CreateResponse(HttpStatusCode.OK);
}
}
Jawaban:
ASP.NET Core. Pendekatan 1
Jika Pengontrol Anda meluas
ControllerBase
atauController
Anda dapat menggunakanContent(...)
metode:ASP.NET Core. Pendekatan 2
Jika Anda memilih untuk tidak memperluas dari
Controller
kelas, Anda dapat membuat baruContentResult
:API Web ASP.NET MVC lama
Kembalikan konten string dengan tipe media
text/html
:sumber
[Produces]
pendekatan?Dimulai dengan AspNetCore 2.0, dalam kasus ini disarankan untuk menggunakan
ContentResult
sebagai gantiProduce
atribut. Lihat: https://github.com/aspnet/Mvc/issues/6657#issuecomment-322586885sumber