在 C# 中合并两个 xml 文件,不添加也不删除任何内容(给出的示例)

2023-12-02

假设我有一个如下所示的 xml 文件:

<shapes>
    <shape>shape1</shape>
</shapes>

还有另一个 xml 文件,如下所示:

<parentNode>
    <shapes>
        <shape>shape 2</shape>
    </shapes>
</parentnode>

我希望输出是:

<parentNode>
    <shapes>
        <shape>shape1</shape>
        <shape>shape 2</shape>
    </shapes>
</parentnode>

上下文是我正在使用 visio 架构,但我希望写入 visio xml 文件的应用程序的配置文件是 visio 配置文件的精简版本。它应该允许用户更改形状属性,例如“process”具有黄色,并且应该允许他们添加新形状,例如“AccountsTable”,应用程序将在使用标准形状之前搜索该形状,并在某些情况下使用自定义形状。

就合并而言,它基本上需要将正确的叶节点粘贴在正确的位置,如果这有意义的话?除非已明确编写配置文件来执行此操作,否则不会覆盖任何内容,例如自定义“形状 2”。

为了实现这一目标我应该注意什么?数据集方法毫无用处。

非常感谢!!!


您可以将这两个文件加载到两个文件中XElement对象,找到两个对象中的目标节点并根据需要添加或删除。

这是一个示例:

var doc1 = XDocument.Parse(file1).Element("shapes");
var doc2 = XDocument.Parse(file2).Element("parentNode").Element("shapes");

doc2.Add(doc1.Nodes());
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 C# 中合并两个 xml 文件,不添加也不删除任何内容(给出的示例) 的相关文章

随机推荐

  • Bash 脚本查找两个字符串之间的差异

    给定这两个字符串 12345 1245 如果第一个是完整的字符串 而第二个字符串缺少第一个字符串 我希望它返回 3 再次如此 The ball is red The is red 我要回 球 我尝试过比较 diff lt echo 1234
  • 带有匹配媒体的 jQuery 媒体查询

    我正在尝试根据屏幕分辨率更改我的 jQuery 代码 我正在对主要内容区域进行动画处理 并且想在不同的屏幕尺寸上更改其宽度 经过大量在线搜索后 我发现了一些可能有用的东西 但我无法让它工作 这是需要更改的代码片段 它称为 Match Med
  • 如何使用 Symfony 2 应用程序的内部处理程序将用户注销

    Symfony 实现了注销用户和杀死 cookie 的功能 有一个LogoutListener它将这些操作委托给几个注销处理程序 CookieClearingLogoutHandler and SessionLogoutHandler 如果
  • 将IP转换为主机名[重复]

    这个问题在这里已经有答案了 我想编写一个 python 脚本来将 IP 地址转换为主机名 我正在使用 Linux 盒子 我在 whois 命令中没有看到此信息 是否有任何命令始终给出正确的主机名 尽可能准确 Socket库有一个 API 可
  • JavaScript 中的 HtmlSpecialChars 等效项是什么?

    显然 这比我想象的更难找到 而且它甚至是如此简单 有没有类似PHP的函数html特殊字符内置于 JavaScript 中 我知道自己实现它相当容易 但使用内置函数 如果可用 会更好 对于那些不熟悉 PHP 的人来说 htmlspecialc
  • Ubuntu 中的 Composer 全局配置信息存储在哪里?

    我在全局 Composer 配置中添加了错误的 github 令牌 并且无法再次将其删除 I did composer config global auth github oauth github com myWrongTokenDamn
  • 页面更改后未触发页面显示

    我正在使用 jQuery Mobile 我想在用户单击主页上的按钮后将浏览器重定向到另一个页面 为此 我写道 mobile changePage album search results html data area searchArea
  • Google 地图 v3 从地图外部的链接打开信息窗口

    当用户单击地图外部的链接时 我尝试打开信息窗口 不知道我在这里缺少什么 基本上 我有一个城市列表 每个城市都有一个 id var ids 在 ids 上循环 当用户单击该链接 在 click myclick 1 id 上 如该城市的信息窗口
  • 如何保存所有通过 javascript 添加的内联表单?

    我在保存内联表单时遇到问题 它确实保存默认表单 但每当我添加新的内联表单时 它都不会保存 我缺少什么 谁能告诉我错误吗 谢谢 模型 py class Student models Model name models CharField ma
  • 如何在 Java 中使用 HttpSession 跟踪登录尝试?

    我有一个无框架的网络应用程序 我需要实现一种简单的方法来使用会话检查不成功的登录 如果用户尝试使用不正确的用户名 密码组合登录 3 次 他们将有 20 分钟的超时时间 然后才能再次尝试登录 目前我仅在用户成功登录系统时设置用户会话 但是 似
  • 在 GO 中捕获重复组

    我正在尝试创建一个可以解析由大写单词后跟零个或多个封装在双引号中的参数组成的字符串的函数 例如 以下每一行 COPY filename one filename two REMOVE filename LIST x y z DISCONNE
  • 升级到 Grails 1.3.3 后,Grails 依赖注入不再起作用

    项目设置是Flex 3 BlazeDS Spring Flex Integration Grails 当从我的 Flex 客户端调用服务方法时 我的服务类中的依赖注入在 Grails 1 2 1 中工作得很好 当我昨天使用常规的 grail
  • 使用 jQuery 将表行从一个表复制到另一个表

    当选中该行中的复选框时 我需要能够使用 jQuery 将一行从一个表复制到另一个表 我尝试使用 clone 方法但这有非常奇怪的行为 尽管 jQuery 专门针对第二个表中的行 但当复制到第一个表时 它仍然可以成为目标 所以要么clone
  • 为什么临时借用是合法的?

    来自 C 我很惊讶这段代码在 Rust 中是有效的 let x mut String new x push str Hello 在 C 中 您无法获取临时值的地址 并且临时值的寿命不会比它出现的表达式的寿命长 临时在 Rust 中存在多久
  • 从arm汇编函数返回浮点到objective-c

    我编写了一个汇编函数 它可以在 iPhone 4 32 位代码 和 iPhone 6s 64 位代码 上正常运行 我从 Objective C 中的调用函数传入四个浮点数 这是我用于 4 个浮点数的结构 下面是该函数的原型 正如我的 Obj
  • 如何手动下载/降级 Android 模拟器

    我上周更新了 Android Studio 及其组件 但我一直面临模拟器的麻烦 更新之前一切都很好 现在我只想拿回我的旧模拟器 搜索后我发现了这个答案here 手动下载的链接就像http dl google com android repo
  • 对 epp 模板使用 puppet hash

    我在 erb 模板中有下一个代码 proxy cache path keys zone levels max size inactive 如何将其移植为 epp 模板 我发现这方面的信息很少 请帮忙 您可以按照以下方法执行此操作 显示
  • 使用短代码在任何地方显示 WooCommerce 优惠券输入字段

    我有一个小项目 需要将 Woocommerce 优惠券字段插入任何页面 但这对我来说似乎很复杂 我在谷歌上搜索了这方面的内容 但没有任何关于这方面的资源 找到了有关插入字段的代码 将以下代码插入到文本块中 div class redeem
  • 使用 jquery post 将字典数据传递给控制器​​字符串方法

    我的 Jquery 代码如下 btnExec live click function var data1 lorem ipsum var data2 lorem ipsum var data3 lorem ipsum var dict ne
  • 在 C# 中合并两个 xml 文件,不添加也不删除任何内容(给出的示例)

    假设我有一个如下所示的 xml 文件