【发布时间】:2014-09-03 14:13:27
【问题描述】:
当我需要从动作过滤器 (AuthorizationFilterAttribute) 内的请求正文(或模型)中获取一些数据时,我有一个特殊情况。我找到了这种方式:
public async override Task OnAuthorizationAsync(HttpActionContext actionContext, CancellationToken cancellationToken)
{
var model = await actionContext.Request.Content.ReadAsAsync<XYZ>();
var valueINeed = model.Something;
etc...
}
这工作正常,但不幸的是,在调用 ReadAsAsync 后,一旦无法再次读取模型(我猜 ReadAsAsync 在下划线流中移动位置)。因为它无法再次读取模型,所以不要将其纳入控制器操作:
public async Task<HttpResponseMessage> Put([FromBody]XYZ order)
{
// order is null here
}
任何想法如何阅读动作过滤器中的模型或如何解决这个问题?
【问题讨论】:
标签: c# asp.net asp.net-mvc asp.net-web-api