我觉得这可能是一个基本问题!
我有一个复杂的对象,即包含属性列表的文档对象.它是通过反序列化一些XML创建的.
我想将整个模型传递给View
Return ViewResult(MyDoc)
Run Code Online (Sandbox Code Playgroud)
在视图中编辑了一些属性.然后控制返回到后置控制器:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Index(Document myDoc)
Run Code Online (Sandbox Code Playgroud)
"myDoc"现在只代表我的Form的字段.我怀疑这是ModelBinding在起作用.所以我想我需要将我的复杂对象保存在隐藏字段中(例如很棒)或者作为会话对象.但是我有点困惑我的更新字段如何合并回到持久对象(隐藏或会话).
我正在考虑在SQL Server 2008 R2中使用XML数据类型,但也使用EF和MVC.EF5是否支持XML数据类型?如果没有,那么我将不得不选择不同的数据库设计.
非常感谢.
正如John Saunders所建议的那样,我一直在尝试使用XElement.但是我的XML没有在Razor View中缩进.我一定是在做傻事,但我看不到.
控制器代码:
XElement myXElement = XElement.Load(strMapPath + strFileName);
ViewBag.MyOrigDocXML = myXElement;
return View();
Run Code Online (Sandbox Code Playgroud)
Razor Code in View:
@if(ViewBag.MyOrigDocXML != null)
{
@ViewBag.MyOrigDocXML.ToString();
}
Run Code Online (Sandbox Code Playgroud)
任何帮助非常感谢,
asp.net-mvc ×2