在 ASP.NET MVC 中,当使用正确类型的对象呈现用户控件时,我遇到了不正确的类型错误
-
08-06-2019 - |
题
我遇到以下形式的错误:“传递到字典中的模型项是 FooViewData 类型,但该字典需要 bar 类型的模型项”,即使我为键入的用户控件传递了正确类型 (bar) 的对象。
解决方案
@MattMitchell 所说的可能就是您看到此错误的原因。
如果你想知道 为什么;这是因为当您在使用 RenderUserControl() 时将 null 作为 controlData 参数传递时,框架将尝试将视图数据从当前视图上下文传递到用户控件上(请参阅 System.Web.Mvc 中的 UserControlExtensions.DoRendering 方法)。
其他提示
可能发生的情况是渲染用户控件时提供的对象实际上为空。
不隶属于 StackOverflow