0

我们可以使用 C# 和 SQL Server 中的数据创建 XML 文件吗?

XML 文件中的数据应类似于“温度为10/10/2012华氏度”10:10:10 AM76

日期、时间和温度取自 SQL Server 数据库。查询是:Select Date,Time,IndoorTemp from ThermData

请帮助我获取上述 XML 文件的代码。我完全不知道如何在 C# 中工作。

4

3 回答 3

0
    XmlDocument XD = new XmlDocument();
    XmlNode Root = XD.AppendChild(XD.CreateElement("Root"));
    XmlNode Child = Root.AppendChild(XD.CreateElement("Child"));
    XmlAttribute ChildAtt = Child.Attributes.Append(XD.CreateAttribute("Attribute"));
    ChildAtt.InnerText = "My innertext";
    Child.InnerText = "Node Innertext";
    XD.Save("Add.xml");

做这样的事情。

于 2013-05-30T11:10:15.503 回答
0

您可以使用 xmlserializer 构建 xml 文件,请参阅http://msdn.microsoft.com/en-us/library/system.xml.serialization.xmlserializer.aspx

于 2013-05-30T11:02:02.273 回答
0

您可以使用 XmlWriter 来执行必要的操作,并使用 XmlReader 来针对 XSD 引用它。

using (XmlWriter writer = XmlWriter.Create(FilePath + FileName))
            {
                writer.WriteStartDocument();
                writer.LookupPrefix("xs");
                writer.WriteStartElement("TestForXML");


                        foreach (DataRow currentRow in dt.Rows)
                        {
                        writer.WriteStartElement("Test");
                            writer.WriteElementString("", Convert.ToString(currentRow[""]));
                            writer.WriteElementString("", Convert.ToString(currentRow[""]));
                            //writer.WriteElementString("", "");
                            writer.WriteElementString("", "");
                        writer.WriteEndElement();

                        }

                    writer.WriteEndElement();   
                writer.WriteEndDocument();

            }

            System.IO.FileInfo f = new System.IO.FileInfo(FilePath + FileName);
            string destinationFileName = System.IO.Path.GetFileNameWithoutExtension(FilePath + f.Name) + System.DateTime.Now.ToString("ddMMyy_HHmmss") + ".xml";
            f.CopyTo (FilePath + destinationFileName);

            XmlReaderSettings settings = new XmlReaderSettings();
            settings.Schemas.Add(null, FilePath + XSDFile); 
            settings.ValidationType = ValidationType.Schema; 
            XmlDocument document = new XmlDocument();
            document.Load(FilePath + FileName);
            XmlReader rdr = XmlReader.Create(new StringReader(document.InnerXml), settings);
            while(rdr.Read()){}
于 2013-05-30T11:21:51.153 回答