如何处理ASP.NET MVC中的常见检查?

时间:2014-03-26 14:23:45

标签: asp.net-mvc

让我们说,我有一个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");

是否有更好的方式自动'为某些行为执行/包含/注入此类测试?

1 个答案:

答案 0 :(得分:0)

您要找的是Apecct Oriented Programming。本文在.NET中有一个框架列表。