在 ASP.NET MVC 中,当使用正确类型的对象呈现用户控件时,我遇到了不正确的类型错误

StackOverflow https://stackoverflow.com/questions/5544

  •  08-06-2019
  •  | 
  •  

我遇到以下形式的错误:“传递到字典中的模型项是 FooViewData 类型,但该字典需要 bar 类型的模型项”,即使我为键入的用户控件传递了正确类型 (bar) 的对象。

有帮助吗?

解决方案

@MattMitchell 所说的可能就是您看到此错误的原因。

如果你想知道 为什么;这是因为当您在使用 RenderUserControl() 时将 null 作为 controlData 参数传递时,框架将尝试将视图数据从当前视图上下文传递到用户控件上(请参阅 System.Web.Mvc 中的 UserControlExtensions.DoRendering 方法)。

其他提示

可能发生的情况是渲染用户控件时提供的对象实际上为空。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top