让我们说,我有一个ASP.NET MVC控制器,通常有添加,更新,删除和详细操作。
在每个操作中,我必须检查传入的ID是否与现有数据库对象匹配,以及它是否返回404。
有时我还必须检查当前用户是否有权使用此特定对象或其他测试。
我经常在一些控制器操作中编写很多重复的代码,例如:
Foo foo = DataContext.Foos.Find(id);
if(foo == null)
return HttpNotFound("The requested foo does not exist");
if(!foo.Users.Any(x => x.Username == User.Identity.Name))
throw new HttpException(401, "Unauthorized access");
是否有更好的方式自动'为某些行为执行/包含/注入此类测试?