[c#] Как вернуть определенный код статуса и содержимое с контроллера?



0 Answers

Этот код может работать для не-NET Core MVC-контроллеров:

this.HttpContext.Response.StatusCode = 418; // I'm a teapot
return Json(new { status = "mer" }, JsonRequestBehavior.AllowGet);
Question

Я хочу, чтобы приведенный ниже пример контроллера возвращал код состояния 418 без содержимого. Установка кода состояния достаточно проста, но, похоже, есть что-то, что нужно сделать, чтобы сигнализировать о завершении запроса. В MVC до ASP.NET Core или в WebForms, который может быть вызовом Response.End() но как он работает в ядре ASP.NET, где Response.End не существует?

public class ExampleController : Controller
{
    [HttpGet][Route("/example/main")]
    public IActionResult Main()
    {
        this.HttpContext.Response.StatusCode = 418; // I'm a teapot
        // How to end the request?
        // I don't actually want to return a view but perhaps the next
        // line is required anyway?
        return View();   
    }
}



Related