我有一个模型SiteMapModel,里面有一个VirtualFolderModel对象。
public class SiteMapModel
{
public SiteMapModel(DataRow data)
{
SMF_ID = Convert.ToInt32(data["SMF_ID"]);
SMF_VF_ID = Convert.ToInt32(data["SMF_VF_ID"]);
VirtualFolder = new VirtualFolderModel(data);
}
public VirtualFolderModel VirtualFolder;
public int SMF_ID { get; set; }
public int SMF_VF_ID { get; set; }
}
public class VirtualFolderModel
{
public VirtualFolderModel(DataRow data)
{
VF_ID = Convert.ToInt32(data["VF_ID"]);
}
public int VF_ID { get; set; }
}
在我的控制器中,我将模型传递给视图。
public ActionResult Edit(int id)
{
SiteMapData smd = new SiteMapData();
SiteMapModel smm = new SiteMapModel(smd.GetFolderData((int)id, 15));
return View(smm);
}
如何在我看来使用它?
<div>
<span class="editor-label">
@Html.Label("Title")
</span>
@Html.TextBox("SMF_Name")
@Html.ValidationMessage("SMF_Name")
<span class="editor-label">
@Html.Label("VF_ID")
</span>
@Html.TextBox("VF_ID")
@Html.ValidationMessage("VF_ID")
<input type="submit" value="Save" />
</div>
@Html.TextBox("VF_ID")
不起作用
答案 0 :(得分:1)
在您的视图顶部添加:
@ModelType SitemapModel
编辑:对于C#,请使用:
@model SitemapModel
这样做只会告诉您的视图在运行时给出了哪种模型。在这种情况下,它是SitemapModel类型的对象。
在您的视图中,您可以将其引用至model.SMF_ID