C# 从所有控制器调用方法
此方法检查C# 从所有控制器调用方法,c#,C#,此方法检查状态,并在此基础上返回200或400状态代码 private IActionResult ResponseType(Response response) { if (response.Status) return Ok(response); return BadRequest(response); } 我想从所有控制器调用此方法,以便确定是否应返回200或400。我应该在哪里声明此方法?在“通用”控制器、服务等中
状态
,并在此基础上返回200
或400
状态代码
private IActionResult ResponseType(Response response)
{
if (response.Status)
return Ok(response);
return BadRequest(response);
}
我想从所有控制器调用此方法,以便确定是否应返回
200
或400
。我应该在哪里声明此方法?在“通用”控制器、服务等中?此用例的最佳实践是什么?在项目中创建继承自System.Web.Mvc.Controller
的BaseController
,并在此处编写所有通用属性、方法和通用逻辑
在任何其他控制器中,继承自此BaseController
BaseController
public abstract class BaseController : Controller
{
public IActionResult ResponseType(Response response)
{
if (response.Status)
return Ok(response);
return BadRequest(response);
}
//Any other common methods, logics here
}
public class AnyController : BaseController
{
public ActionResult GetResponseType(Response response)
{
return ResponseType(response);
}
}
所有其他控制器
public abstract class BaseController : Controller
{
public IActionResult ResponseType(Response response)
{
if (response.Status)
return Ok(response);
return BadRequest(response);
}
//Any other common methods, logics here
}
public class AnyController : BaseController
{
public ActionResult GetResponseType(Response response)
{
return ResponseType(response);
}
}
你想去哪里就去哪里。我把它放在一个抽象的基本控制器中。你可以把
BaseController
抽象化。