<?xml version='1.0' encoding='gb2312' ?>
<result>
<rows>
<row>
<title> <![CDATA[sunny]]></title>
<value><![CDATA[5]]></value>
</row>
<row>
<title> <![CDATA[sunny1]]></title>
<value><![CDATA[5]]></value>
</row>
<row>
<title> <![CDATA[sunny1]]></title>
<value><![CDATA[5]]></value>
</row>
ROW是动态的根据数据的多少增减的!
... </rows>
</result>怎么用 C# 向页面输出这样的XML
<result>
<rows>
<row>
<title> <![CDATA[sunny]]></title>
<value><![CDATA[5]]></value>
</row>
<row>
<title> <![CDATA[sunny1]]></title>
<value><![CDATA[5]]></value>
</row>
<row>
<title> <![CDATA[sunny1]]></title>
<value><![CDATA[5]]></value>
</row>
ROW是动态的根据数据的多少增减的!
... </rows>
</result>怎么用 C# 向页面输出这样的XML
Response.Clear();
Response.ContentType = "text/xml";
Response.Charset = "GB2312"; Response.Write("<?xml version='1.0'?>");
Response.Write("<result>");
Response.Write(" <rows>");
foreach (WhiteGameEntity Info in WhiteGameE)
{
Response.Write(" <row>");
Response.Write(" <title>");
Response.Write(" <![CDATA["+Info.YueSaiName.Trim()+"]>");
Response.Write(" </title>");
Response.Write(" <value>");
Response.Write(" <![CDATA["+Info.Number.ToString().Trim()+"]>");
Response.Write(" </value>");
Response.Write(" </row>");
}
Response.Write("</rows>");
Response.Write("</result>");
Response.Flush();
Response.End();
DataColumn dc = new DataColumn("id", typeof(string));
dt.Columns.Add(dc);
DataColumn dc2 = new DataColumn("name", typeof(string));
dt.Columns.Add(dc2); DataRow drNew = dt.NewRow();
drNew[0] = "1111";
drNew[1] = "aaaa";
dt.Rows.Add(drNew); Response.Clear();
Response.ContentType = "text/xml";
Response.Charset = "GB2312"; Response.Write(" <?xml version='1.0'?>");
Response.Write(" <result>");
Response.Write(" <rows>");
foreach (DataRow dr in dt.Rows)
{
Response.Write(" <row>");
Response.Write(" <title> ");
Response.Write( dr["id"] );
Response.Write(" </title> ");
Response.Write(" <value>");
Response.Write( dr["name"] );
Response.Write(" </value>");
Response.Write(" </row>");
}
Response.Write(" </rows>");
Response.Write("</result>");
Response.Flush();
Response.End();
输出结果: <?xml version="1.0" ?>
- <result>
- <rows>
- <row>
<title>1111</title>
<value>aaaa</value>
</row>
</rows>
</result>
private XmlTextWriter WriteHeader(XmlTextWriter writer)//创建头部
{
writer.WriteStartDocument();
writer.WriteStartElement("result");
writer.WriteStartElement("row");
return writer;
} private XmlTextWriter WriteItem(XmlTextWriter writer,string row,string title,
string value)//创建row部分
{
writer.WriteStartElement("row");
writer.WriteElementString("title",title);
writer.WriteElementString("value",value);
writer.WriteEndElement();
return writer;
} private XmlTextWriter WriteTailer(XmlTextWriter writer)//创建尾部
{
writer.WriteEndElement();
writer.WriteEndElement();
writer.WriteEndDocument();
return writer;
}
像如下调用 public void CreateSampleXML(HttpResponse response,string row ,string title,string value)
{
///创建写XML文档的对象
XmlTextWriter writer = new XmlTextWriter(response.OutputStream,System.Text.Encoding.UTF8);
///写文档的头部
WriteHeader(writer);
///写文档的Item
//然后这里循环写row部分
{
WriteItem(writer,row,title,value);
}
///写文档尾部
WriteRSSTailer(writer);
///缓存页面
writer.Flush();
writer.Close();
///设置页面的输出格式
response.ContentEncoding = System.Text.Encoding.UTF8;
response.ContentType = "text/xml";
response.Cache.SetCacheability(HttpCacheability.Public);
response.End();
}
自己再好好改改吧,应该可以用的