xml格式如下:
<?xml version="1.0" encoding="utf-8" ?> 
<Rooms>
<room>
<ID>10001</ID>
<State>1</State>
</room>
<room>
<ID>10002</ID>
<State>1</State>
</room>
<room>
<ID>10003</ID>
<State>0</State>
</room>
<room>
<ID>10004</ID>
<State>1</State>
</room>
<room>
<ID>10005</ID>
<State>0</State>
</room>
<room>
<ID>10006</ID>
<State>0</State>
</room>
<room>
<ID>10007</ID>
<State>0</State>
</room>
<room>
<ID>10008</ID>
<State>0</State>
</room>
<room>
<ID>10009</ID>
<State>0</State>
</room>
<room>
<ID>10010</ID>
<State>0</State>
</room>
</Rooms>
我想读取state为0的值到DropDownList.请教如何做?

解决方案 »

  1.   

    DataSet ds = new DataSet();
    FileStream fin ;
    fin = new FileStream(Server.MapPath(datafile),FileMode.Open, FileAccess.Read,FileShare.ReadWrite) ; 
    ds.ReadXml(fin);
    fin.Close();
    DataTable customerTable = ds.Tables[0];
    DataView dv=new DataView(customerTable,"","ID DESC",DataViewRowState.CurrentRows);
    dv.RowFilter = "State="0"";
    Drop1.DataSource = dv;
    Drop1.DataBind();
    Drop1.DataTextField = "State";
    Drop1.DataValueField = "ID";
      

  2.   

    string datafile = "message/message.xml" ;
      

  3.   

    ASP.NET DropDownList XML Binder Class 
    http://www.xmlforasp.net/codeSection.aspx?csID=26
      

  4.   

    DataSet ds=new DataSet();
    ds.ReadXml(Server.MapPath("路径"));DataView dv=ds.Tables[0].DefaultView;
    dv.RowFilter="State=0";Drop1.DataSource = dv;
    Drop1.DataBind();
    Drop1.DataTextField = "State";
    Drop1.DataValueField = "ID";