我想在视图中呈现3个DataSet。我看过几个例子来渲染一个,但不是两个。
可以将DataSet放在ViewData Collection中,但是当它们在视图中访问时,它们不再是“DataSet”。
感谢。
答案 0 :(得分:1)
ViewData有点hacky,很容易被滥用。
您应该创建一个ViewModel并将它们放在那里。 在Controller中填充模型,然后将其传递给View。
<强> MODEL 强>
public class MyPageModel
{
public DataSet data1 { get; set; }
public DataSet data2 { get; set; }
}
查看强>
<%@ Page Title="" Language="C#" MasterPageFile="~/whatever.master" Inherits="System.Web.Mvc.ViewPage<MyNamespace.MyPageModel>" %>
<%: foreach (var row in Model.data1.Tables[0].Rows) { blah blah blah } %>
<%: foreach (var row in Model.data2.Tables[0].Rows) { blah blah blah } %>
<强> CONTROLLER 强>
public ActionResult MyPage()
{
var model = new MyPageModel();
// Fill model.data1 here....
// Fill model.data2 here....
return View(model);
}