在asp.net中读取xml文件

时间:2011-06-09 22:32:49

标签: asp.net xml gridview

我有一个xml文件,结构如下:

< rewriteMaps>  
  < rewriteMap name="StaticRewrites" />  
  < add key="/superstar2011" value="/article.aspx?articleid=4014" />  
  < add key="/superstar2012" value="/article.aspx?articleid=4012" />  
  < add key="/superstar2012" value="/article.aspx?articleid=4012" />  
< /rewriteMaps> 

我有一个gridview,我想用它来绑定键和值。我该怎么办呢? 我是带有gridview的xml新手。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:2)

XElement x = XElement.Parse("<rewriteMaps><rewriteMap name=\"StaticRewrites\" /><add key=\"/superstar2011\" value=\"/article.aspx?articleid=4014\" /><add key=\"/superstar2012\" value=\"/article.aspx?articleid=4012\" /><add key=\"/superstar2012\" value=\"/article.aspx?articleid=4012\" /></rewriteMaps>");

var r = from i in x.Descendants("add")
                    select new { key = "key", value = "value" };

yourGrid.Datasource = r;
yourGrid.DataBind();

或者喜欢这个例子:

DataSet dataSet= new DataSet();
string filePath = Server.MapPath("your.xml");

dataSet.ReadXml(filePath);                    
yourGrid.DataSource = dataSet.Tables[0].DefaultView;
yourGrid.DataBind();

答案 1 :(得分:0)

您可以考虑使用XMLDatasource。

<asp:xmldatasource id="XmlDataSource1" runat="server" datafile="books.xml" />

然后将其绑定到控件

<asp:TreeView id="TreeView1" runat="server" datasourceid="XmlDataSource1">
        <databindings>
          <asp:treenodebinding datamember="book" textfield="title"/>
        </databindings>
</asp:TreeView>

答案 2 :(得分:0)

读取xml文件并收集数据表或数据集中的数据。然后将gridview与此数据表或数据集绑定。在数据集或数据表中收集数据后,您只需通过以下两行将gridview与数据表或数据集绑定:

GridView1.DataSource=ds;
GridView1.DataBind();