【发布时间】:2012-01-04 18:10:34
【问题描述】:
我刚刚将我的项目从 ASP.NET MVC1.0 升级到 ASP.NET MVC4.0
真正让我害怕的是升级到MVC3.0文档的下面这句话
在以前的 ASP.NET MVC 版本中,动作过滤器是根据 除少数情况外要求。这种行为从来都不是保证 行为,但仅仅是一个实现细节和合同 过滤器是认为它们是无状态的。在 ASP.NET MVC 3 中,过滤器是 更积极地缓存。因此,任何自定义操作过滤器 不正确地存储实例状态可能会被破坏。
我认为没有简单的方法来测试由不正确存储的实例状态引起的错误。 如果我有问题,我很有信心我只会在生产中找到它。
不正确存储的实例状态在这里真正意味着什么?
我有这个代码:
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
ProductModel productModel = new ProductModel()
filterContext.ActionParameters["model"] = productModel;
}
这是不正确存储实例状态的示例吗?
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-3 action-filter