I have encountered a problem while upgrading to MVC4 and I was wondering if anyone else has seen this problem and how to get around it. Whenever I put a IDictionary, Dictionary or RouteValueDictionary to the parameter list of an action, the route values for that MVC call are being passed.
To reproduce this problem create an MVC4 web project using the default Internet Application settings and add
IDictionary<string, object> myDictionary = null
to the parameter list of the Index controller and put a breakpoint inside the method. You will see that the IDictionary parameter is populated by the model binder with the route values.
How do I turn this off, or get around this?