C# 读取数据库记录生成xml文件

找个昵称真费劲 2014-05-14 11:22:11
有没有人知道如何用C#语言读取数据库,并将数据库中的记录生成如下格式的xml文件?
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2008 (http://www.altova.com) by TEAM ViRiLiTY (VRL) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="NormalSupplyLinkQualityRecordList">
<xs:complexType>
<xs:sequence>
<xs:element name="NormalSupplyLinkQualityRecord" type="DataRecord" maxOccurs="unbounded"/>
<xs:element name="ReportTime" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="DataRecord">
<xs:sequence>
<xs:element name="Id">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:totalDigits value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Level">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:totalDigits value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:schema>
...全文
431 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
  • 打赏
  • 举报
回复
引用 1 楼 kongwei521 的回复:
取出数据循环遍历然后写就写了 用stringbuilder 保存 stringbuilder sb=new stringbuilder(); sb.Append("头部的那部分"); for(int i=0;i<dt.rows.count;i++) { sb.Append("<xs:element name="Id"> <xs:simpleType> <xs:restriction base="xs:integer"> <xs:totalDigits value="+dr.rows[i]["id"]+"/> </xs:restriction>"); } 其他类似
这些是xsd文件中的格式,如何根据这个xsd文件生成xml呢
  • 打赏
  • 举报
回复
引用 5 楼 wind_cloud2011 的回复:
网上有例子,http://www.cnblogs.com/freeton/articles/1693954.html
请问网上这个例子怎么该怎么用呢,之前看过了,但是不会用他这些函数
wangxingge2010 2014-05-16
  • 打赏
  • 举报
回复
XElement 加载,然后直接序列化。
exception92 2014-05-16
  • 打赏
  • 举报
回复
循环遍历 DataTable的数据行,拼接成xml文件。就是比较麻烦。。
z22708387 2014-05-16
  • 打赏
  • 举报
回复
Xml 其实也可以当做Html取处理啊。 用XmlDocument,也可以循环拼接字符串.写入文件.
wind_cloud2011 2014-05-15
  • 打赏
  • 举报
回复
网上有例子,http://www.cnblogs.com/freeton/articles/1693954.html
  • 打赏
  • 举报
回复
如何根据xsd文件生成xml文件呢,有没有小实例啊
蝶恋花雨 2014-05-14
  • 打赏
  • 举报
回复
取出数据循环遍历然后写就写了 用stringbuilder 保存 stringbuilder sb=new stringbuilder(); sb.Append("头部的那部分"); for(int i=0;i<dt.rows.count;i++) { sb.Append("<xs:element name="Id"> <xs:simpleType> <xs:restriction base="xs:integer"> <xs:totalDigits value="+dr.rows[i]["id"]+"/> </xs:restriction>"); } 其他类似
Justin-Liu 2014-05-14
  • 打赏
  • 举报
回复
读取数据库用ADO.NET、EF都可以 XML相关操作用XmlDocument
wind_cloud2011 2014-05-14
  • 打赏
  • 举报
回复

 string connStr = "server=192.168.1.5;database=数据库;uid=sa;pwd=sa";
          SqlConnection myConn = new SqlConnection(connStr);
          string selStr = "select sTime as 时间,data as 数据值  from 表 by sTime desc";
          SqlCommand myCmd = myConn.CreateCommand();
          myCmd.CommandText = selStr;
          myConn.Open();
          SqlDataAdapter sd = new SqlDataAdapter(selStr,myConn);
          DataSet ds = new DataSet();
          sd.Fill(ds);
          ds.WriteXmlSchema("test.xml");
          myConn.Close();
          myCmd.Dispose(); 

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧