如何获得模型中的对象?
问题描述:
我有一个模型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")
不工作
答
在您的视图的顶部添加此:
@ModelType SitemapModel
编辑:对于C#,请使用:
@model SitemapModel
做这只会告诉你的观点是什么样的模型运行。在这种情况下,它是SitemapModel类型的对象。
在你看来,你可以参考它model.SMF_ID
我得到“ModelType”这个名字不会在目前情况下 – eyalb 2011-05-05 10:54:22
是否使用ASP.NET MVC 3的最终版本是否存在?你认为什么样的文件? – Rhapsody 2011-05-05 11:01:50
“Edit.cshtml”,MVC3剃刀html5 – eyalb 2011-05-05 11:04:00