Nul*_*nce 2 asp.net-mvc asp.net-mvc-4
我有一个 MVC API ActionFilterAttribute,它使用实体框架进行权限检查。我发现由于 ActionFilterAttribute 缓存,EF 连接经常中断。您可以在此处找到其他问题。那么有谁知道如何防止在 ActionFilterAttributes 中缓存?
只是对您的标题的说明:我会说 MVC 中的操作过滤器没有缓存,它们充当单例(如您提供的链接中所述)。
作为您需求的答案,我会说使用基于请求的持久性。因为你很可能想要做一些事情,比如: - OnActionExecuting() (例如打开事务) - OnActionExecuted() (提交或回滚)
所以把你的对象(_unitOfWork)放入
System.Web.HttpContext.Current.Items
Run Code Online (Sandbox Code Playgroud)
您可以从单例方法访问它,同时对请求依赖对象进行操作。我正在以类似的方式使用 NHibernate Session