我有一个模型 A,它具有另一个模型类型 B 的属性。我有一个与 A 相关联的视图。我想向 A 添加一个局部视图,它采用 B 类型的模型。这是我的代码
public class ModelA
{
public bool Prop1 {get;set;}
public bool Prop2 {get; set;}
public Dictionary<int, string> Prop3{get; set;}
public int Prop4 {get; set;}
public ModelB Prop5 { get; set; }
public ModelA ()
{
Prop5 = null;
... more code ...
}
}
//This view is tied to ModelA
@using (Html.BeginForm("CreateReport", "Home", FormMethod.Post))
{
some markup
}
//this is the problem
@Html.Partial("FileLinks", Model.Prop5) //This line throws an error
错误:传入字典的模型项是“ModelA”类型,但该字典需要“ModelB”类型的模型项
如果我将它改为@Html.Partial("FileLinks", new ModelB())
为什么原始代码不起作用?该属性的类型为 ModelB。
任何帮助表示感谢!
更新:我忘了从控制器添加一些代码
m.FileLinks = new ModelB() return View("Index", m)
所以模型不为空