c# - 将 2 个 XML 文件合并到相同的元素中 C#

标签 c# xml wcf http soa

我需要创建一个将城市名称作为输入并返回城市的位置、国家和天气信息的 Web 服务。问题是 ID、位置、国家/地区在一个 XML 文件中,所有天气详细信息在另一个文件中。

<City>
<ID>city1</ID>
<Grid_ref>NG 895608</Grid_ref>
<Name>Berlin</Name>
<Country>Germany</Country>
</City>
<cityWeather>
<ID>city1</ID>
<temperature>20</temperature>
<wind>2</wind>
</cityWeather>

使用 c# 是否可以使用 ID 将所有内容合并到 1 个文件中,或者是否有其他方法可以做到这一点?然后我会搜索 XML 文件一次,因为有 2 个不同的文件让我感到困惑。

最佳答案

您可以使用数据集。我想您有两个 XML 文件。 CityWeather.xml 和 City.xml,你可以做这个

try
    {
        XmlTextReader xmlreader1 = new XmlTextReader("C:\\Books1.xml");
        XmlTextReader xmlreader2 = new XmlTextReader("C:\\Books2.xml");

        DataSet ds = new DataSet();
        ds.ReadXml(xmlreader1);
        DataSet ds2 = new DataSet();
        ds2.ReadXml(xmlreader2);
        ds.Merge(ds2);
        ds.WriteXml("C:\\Books.xml");
        Console.WriteLine("Completed merging XML documents");
    }
    catch (System.Exception ex)
    {
        Console.Write(ex.Message);
    }
Console.Read(); 

您可以根据需要进行任何更改

希望对你有帮助

关于c# - 将 2 个 XML 文件合并到相同的元素中 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33691897/

相关文章:

c# - 可观察的xml文档

wcf - 在 web.config 中设置 WCF InstanceContextMode (Percall, Single)

c# - 半临时报告的通用接口(interface)

c# - 如何映射具有对实体的引用的值类型?

c# - C# 中单词的后期绑定(bind)

c# - RabbitMQ c# System.IO.EndOfStreamException 异常

wcf - System.Runtime.Serialization.DataContractAttribute 在命名空间 System.Runtime.Serialization 中不存在

c# - 是否有用于 c# 的流畅电子邮件库?

java - 将 XML 粘贴到我的 IDE 中并对其进行格式化

java - ExpandableListView:从子项获取输入值