MVC - 没有模型的Datagrid绑定

时间:2009-11-12 09:38:00

标签: asp.net-mvc gridview

好的,我会解释一下。我需要动态创建MVC中的数据网格(可能是视图上的多个数据网格),具体取决于正在读入的XML文件。文件循环通过,可能包含多个网格数据,标题和行在文件中设置。问题是我的应用程序在读取之前不会知道XML文件的内容,因此我无法将其应用于IEnumerable模型。我的想法是使它成为通用的,以便它可以读入我传递给它的任何XML文件,如下所示设置并将数据放入可排序的数据网格中。当前的控制措施可以实现这一点吗?我已经尝试过Teleriks MVC网格,虽然我可以将数据读入网格,但我无法对数据进行排序,因为此功能仅在传递DTO时才有效。我有一种感觉,我正在寻找的是无法做到的(除非我写一个自定义的HTMLHelper或其他东西),但是我猜是没有害处

我的xml将如此

<xml>
  <REPORT>
     <HEADERS>
       <HEAD>Col1</HEAD>           
       <HEAD>Col2</HEAD>
     </HEADERS>         
     <ROWS>
       <ROW>Data1</ROW>           
       <ROW>Data2</ROW>
     </ROWS>
  </REPORT>
 </xml>

由于

3 个答案:

答案 0 :(得分:1)

我没有看到那里有你需要的助手扩展。

有一些很好用的通用集合(例如Telerik或MVCContrib's)。您提供的示例无法转换为可由这些处理的集合:行需要具有可与标题元素匹配的单元格。

<xml>
  <REPORT>
     <HEADERS>
       <HEAD>Col1</HEAD>           
       <HEAD>Col2</HEAD>
     </HEADERS>         
     <ROWS>
       <ROW><CELL>Data1</CELL><CELL>Data2</CELL></ROW>           
       <ROW><CELL>Data2</CELL><CELL>Data4</CELL></ROW>
     </ROWS>
  </REPORT>
 </xml>

如果可以将XML反序列化为通用集合,则很容易填充网格。

希望这有帮助。

答案 1 :(得分:1)

我会研究JQuery Grid。您必须将数据转换为它想要的格式,但它为您提供了很多灵活性和免费的UI。但是,您仍然需要编写排序代码。

答案 2 :(得分:1)

我建议使用jquery网格。然后编写一个类来解析xml并在视图中生成网格javascript,并编写第二个动作来解析xml(再次)并生成json结果。 MVCCrud可能有助于在那里有一个通用的jquery网格,但它可以在IQueryable列表中运行,因此需要进行调整。

相关问题