我正在设计一个ASP.NET MVC 4解决方案,它允许用户导入一个Excel,在页面上对其进行特定的修改,并以相同的格式导出该文件。我正在尝试创建一个名为Grid的视图,它将显示包含Excel电子表格中所有数据的大型数据集的内容。
public ActionResult Grid()
{
DataSet ds = TempData["DataSet"] as DataSet;
string exampleCell = ds.Tables[0].Rows[3][2].ToString();
return View();
}
exampleCell是从表中提取单个单元格的一个例子。我设想我可以迭代数据集中的所有列和行,并使用这种方法提取所有数据。那么,如何在一个视图上显示所有的exampleCells呢?
发布于 2014-07-16 09:20:48
您最好为您正在迭代的内容创建一个模型。当用户单击客户端的Save时,这将允许MVC生成模型。
因此,您将有一个类,它将封装每一行中的值。拥有另一个模型,它将具有您创建的第一个模型的IEnumerable/IList。
在Controller方法中,将DataSet转换为这些模型,然后将带集合的模型传递给视图。通过迭代可枚举来填充HTML网格/表。
如果希望一次性保存所有用户的更改,请将网格/表包装在表单中,并使用相同的模型(带有IEnumerable)作为POST方法的参数。当它再次调用服务器时,它将为您填充整个模型。
如果您想要保存每个操作,那么使用单个客户端AJAX调用就可以很容易地找到改变的地方(除非您只想再次执行单个海量数据转储),这可能有点困难。
https://stackoverflow.com/questions/24786001
复制相似问题