我在调用时收到以下异常Html.RenderPartial
:
传入字典的模型项是“ChildClass”类型,但该字典需要“ParentClass”类型的模型项。
这两个类与此相关:
public class ChildClass { /* properties */ }
public class ParentClass
{
public ChildClass ChildProperty { get; set; }
/* other properties */
}
我有一个ParentClass
值ChildProperty
的实例null
。
我有两个部分观点,ParentView
( ViewUserControl<ParentClass>
) 和ChildView
( ViewUserControl<ChildClass>
)。
在第一个视图中,我有以下...
<% Html.RenderPartial("~/Views/Controls/ChildView.ascx", Model.ChildProperty); %>
这是引发本文顶部列出的异常的行。
ChildProperty
如果不为空,我已经验证了正确的功能。为什么 MVC 认为这个属性的 null 值是父类型?
我可以通过添加仅呈现ChildView
ifChildProperty
不为 null 的代码来解决此问题,但这一半会破坏拥有视图的观点。