是否可以重用已在过滤器中访问的数据库资源?

时间:2019-02-13 09:56:23

标签: asp.net-core .net-core

在我的ASP.NET Core 2.1应用程序中,我有几个遵循此模式的操作:

  1. 从数据库获取对象
  2. 如果未找到对象->返回NotFound()
  3. 根据对象的属性和当前用户的声明检查一些权限
  4. 如果不允许用户管理此对象->返回Unauthorized()
  5. 否则,如果用户有权管理对象->继续执行操作(单个逻辑)

我想将步骤1-4外包到过滤器中,以获取较简单的操作。同时,我要避免执行两次数据库往返(第一次在过滤器中获取要验证的对象,第二次在操作中最终使用它)。 动作有什么方法可以访问以前在过滤器中检索到的对象,这样就不必强迫我从数据库中再次检索它了?

0 个答案:

没有答案