我在我的项目中遇到了一个奇怪的问题。我的操作是获取旧参数值,而不是 Request.Params 中的实际值。我创建了一个 HomeController.Echo(string text) 动作来说明它(见截图)。当我第一次调用“Home/Echo?text=aaa”等动作时,一切正常。当我第二次使用不同的文本值(“Home/Echo/text=bbb”)调用相同的操作时,我在操作“text”参数中再次获得旧的“aaa”值。奇怪的是 Request.Params 包含正确的“bbb”值。
我在想是否有什么我可以打破自己,但无法弄清楚任何事情。我从 IoC 容器提供控制器,我重写了 ControllerActionInvoker.InvokeActionMethodWithFilters 方法(将依赖项注入到来自 IoC 的过滤器中)并且我正在处理 HttpApplication.AuthenticateRequest。在任何这些中,我都不使用参数/绑定...