我遇到了一个错误的形式:“传入字典的模型项是FooViewData类型,但是这个字典需要一个类型为bar的模型项”,即使我传入了一个正确类型的对象(bar)键入的用户控件。
答案 0 :(得分:3)
@MattMitchell所说的可能是你看到这个错误的原因。
如果你想知道为什么;这是因为当使用RenderUserControl()时传递null作为controlData参数时,框架将尝试将视图数据从当前视图上下文传递到用户控件(请参阅System.Web.Mvc中的UserControlExtensions.DoRendering方法)。
答案 1 :(得分:1)
可能发生的是渲染用户控件时提供的对象实际上是null。