我对ASP.NET MVC很新颖,试图找出解决方法。ASP.NET MVC在表单之间传递数据
目前我返回一个ViewModel,它具有IEnumeable Events作为其唯一属性。此ViewModel强制类型为UserControl,以表格形式展示IEnumable事件。 Event Model的一个属性是XElement,它包含从DB加载的一些XML。
现在我已经添加了一个链接到表格数据的末尾,以便能够在单独的页面中查看XML。我如何将这些数据传递到另一个页面进行查看?
我对ASP.NET MVC很新颖,试图找出解决方法。ASP.NET MVC在表单之间传递数据
目前我返回一个ViewModel,它具有IEnumeable Events作为其唯一属性。此ViewModel强制类型为UserControl,以表格形式展示IEnumable事件。 Event Model的一个属性是XElement,它包含从DB加载的一些XML。
现在我已经添加了一个链接到表格数据的末尾,以便能够在单独的页面中查看XML。我如何将这些数据传递到另一个页面进行查看?
基本上有将数据从一个页面到另一个使用ASP.NET MVC(或任何其他语言/框架下面的HTTP协议)的方法有两种:
input
或textarea
元素。如果您使用input type="hidden"
,则可以给它一个表示数据的值。这样,你可以来回邮寄,直到你到达你想要的地方。我会使用某种类型的ID为事件对象发回请求回到服务器,并让接收端发回与该ID相关的XML。
,如果你通过你的IEnumerable事件对象循环,你可以这样做:
<%= Html.ActionLink("GetXml", "Events", new { id = currentEvent.Id }) %>;
现在在你EventsController一个Action(假设你有一个),像这样:
public ActionResult GetXml(int id)
和检索XML传回查看
况且什么是艾云咨询,您也可以考虑TempData
。
如果您使用Get-后重定向/转发理念,为您的应用程序,你可以这样做:
这里有一个例子http://www.eworldui.net/blog/post/2008/05/08/ASPNET-MVC-Using-Post2c-Redirect2c-Get-Pattern.aspx
值得一提的是,虽然使用TempData的会议asp.net标准。 – UpTheCreek 2011-01-05 13:59:29