我用一个AuthorizeAttribute装饰我的控制器动作。在MVC中的AuthorizeAttribute中获取模型数据3
[ServiceAuthorize(Roles="Editor,Publisher,Administrator")]
public JsonResult Create(NewsArticle newsArticle)
在我的NewsArticle模型中有一个字段,我想在我的AuthorizeAttribute的OnAuthorize方法中使用。
有没有办法从AuthorizeAttribute的OnAuthorize方法中获取模型?
我认为它可以在AuthorizationContext中找到,但我无法找到它。我知道我可以在ActionExecutingContext中的filter属性中获得它,但这意味着我需要在我的操作中使用另一个筛选器,并且希望能够在单个步骤中执行所有授权。
谢谢。
感谢Darin。我认为在我的情况下,“有些特性”可能是“新闻文章”?我会检查一下。 – Perry 2012-01-26 22:36:27
@Perry,不,你认为是错的。它将成为你感兴趣的'NewsArticle'类的一个属性。正如我所说的,由于'OnAuthorization'方法在模型绑定器之前运行,所以在这个阶段你不能真正谈论'NewsArticle'的实例。您可以查看ValueProvider所执行的请求值。当然,在这个阶段他们将以弦乐的形式出现。您可能还需要进行一些额外的解析。 – 2012-01-26 22:37:28
感谢您的澄清。 – Perry 2012-01-26 22:38:36