哪里是放置应该在每个视图上运行的通用业务逻辑的好地方

本文关键字:运行 业务 好地方 视图 | 更新日期: 2023-09-27 18:24:53

我有一个项目,无论用户当前在哪个视图中,我都需要在其中检查并添加cookie。我可以将代码放在代码块中的_Layout部分视图中,但我怀疑这是它的常规位置。它应该放在哪里?

哪里是放置应该在每个视图上运行的通用业务逻辑的好地方

视图通常是放置逻辑的错误位置。

操作过滤器是集中代码并允许轻松自定义的一种可能方式,尤其是对于听起来非常接近AuthorizeAttribute过滤器行为的内容。

有关信息,请参阅ASP.Net MVC中的操作筛选。

public class MyCookieFilter : ActionFilterAttribute ...
[MyCookieFilter]
public ActionResult Index()
{
    // The action method logic.
}

附带说明:在搜索文档时,要小心区分MVC和WebAPI类——许多类具有相似的名称和相似的行为,但在应用于错误的对象时可能会引起一些混乱。