Я только что обновил свой проект с 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;
}
Это образец неправильно сохраненного состояния экземпляра?