问题标签 [xattribute]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
318 浏览

c# - 如何使用 XElement、XAttribute 添加 XML 命名空间值

这是所需的(必需的)输出:

我发现了一些有用的帖子,可以让我朝着正确的方向前进。这个问题让我非常接近,但是在我这边实施时,解决方案存在一些问题。

这是我的代码:

我在使用此代码时遇到的问题:

  • 属性乱序;“xmlns”属性需要先出现
  • 我的根节点的每个子节点现在都有“xmlns=""" 作为属性。

我想得到上面的输出。

谢谢!

0 投票
2 回答
192 浏览

c# - C#中循环中的Xattribute

我需要在循环中添加点。我怎样才能做到这一点?

以下代码的输出:

0 投票
2 回答
1295 浏览

c# - 如何在 C# (XAttribute) 中增加/更新 XML 属性的整数值?

TL;DR:如果我有一个XAttributeof NumFruitsin an XElement,我如何将值从 0 递增/更新到 1,2,3...?

问题:

当我尝试像这样增加 XAttribute 时:

结果numFruits将是numFruits = 01(因为 0 是初始值),而预期的结果应该是numFruits = 1

不希望在解析结束时添加全局变量,因为可能有很多篮子。

解释:

在 C# Linq to XML 中,可以添加XAttributes类似的XElement内容。

XElement basket = new XElement("Marys_Basket", new XAttribute("NumFruits", 0);

在示例中,我们NumFruits XAttribute用作计数器来跟踪XDocument.

当我通过一个(例如)Fruit 对象列表进行交互时,每个都具有一个属性,我通过创建或添加在此示例中将是所有者basket_owner的对象来手动将所有这些对象序列化为 XML 。XElements

由于水果列表不固定,我必须将 Fruit 元素添加到 XElement 并XAttribute通过首先检查所有者元素是否存在来更新(我已经使用 LINQ 查询并检查它们是否为空),然后添加 Fruit XElement 作为一个孩子,产生类似这样的东西:

这是关于如何增加 XML 元素(在本例中为 XElement)而不是 XAttribute的相关问题。也是如此,但不是专门为了增加价值。

我找到了一种方法(作为答案发布)并且想探索一种更强大的方法来做到这一点。因为我的程序多次这样做。

0 投票
0 回答
70 浏览

search - 在 ALL 找到后裔后添加新的 xElement

我有一个包含多个不同 xElement 的 xDocument。

我可以通过搜索它的 xAttributes 来成功找到一个特定的 xElement,然后使用下面的代码在它之后添加一个新的 xElement:

xDocument.Descendants("td").LastOrDefault(e => ((string)e.Attribute("ID")) == "3").Add(new XElement("b", "Just a test."));

问题是我希望在找到所有后代的实例之后添加这个新的 xElement,而不仅仅是 LastOrDefault 或 FirstOrDefault。

我的 xDocument 是动态创建的,并且事先无法知道将有多少个 'ID' = '3' 的 'td' xElement。

任何帮助,将不胜感激。谢谢


根据要求添加代码

所以我试图在<td>ID = 3 之间添加一个标签。这个<b>标签还包含一个字符串变量,即 new xElement("b", DateTaken) & 需要在运行时创建,而不是硬编码,因为它与表格行开头的每个加载的图像相关。

因此,我试图将此<b>标签添加到 ID=3 的每次出现中<td>,而不仅仅是第一个或最后一个。

希望这些额外的信息有所帮助。

0 投票
5 回答
3681 浏览

c# - c#LINQ从XElement获取属性值

我在数据定义文件中有以下 XML:

PQTemplate我使用 LINQ 获取特定的 XElement,并使用以下 LINQ 表达式从包含多个元素的 XML 文件中提取它:

现在我需要获取属性documentType的值,所以我尝试了下面的 LINQ 表达式:

不幸的是,虽然我可以看到值TransListreportName元素的一部分,但我没有运气尝试检索它。

这是在 VS 2013 中显示的图像:

在此处输入图像描述

那么如何获取documentType元素中的属性呢?

0 投票
1 回答
68 浏览

mvvm - 在 wpf 应用程序中绑定 XElement、XAttribute + IDataErrorInfo 的 Relization

我在 wpf 应用程序中使用 mvvm 模式。作为数据源,我有 XDocument。在 UI 中,我将控件绑定到此 XDocument 中的 XElements 和 XAttribute 的值。前任

它允许我将数据放在唯一的位置 - 在 XDoc 中,并允许避免从自定义模型到 xml 的数据转换。

现在我需要用 IDataErrorInfo 扩展模型的功能来实现错误通知。所以我需要向 XElement 和 XAttribute .net 类添加接口。我有 2 个决定:1) xelement 和 xattribute 的模式适配器,它将具有接口 IDataErrorInfo 的实现以及 xelement\xattribute 值的 Value setter\getter。弱点 - 我需要为所有 UI 输入控件创建适配器对象并绑定到它。2) 创建子类,继承XElement\XAttribute,实现接口。Weekness - 我需要将所有 xelements 和 xattributes 转换为我的子类。什么方法更好?

0 投票
1 回答
1070 浏览

c# - 将 xml:space 添加到根元素

我有一个小问题,我认为这很简单……但是唉……

我有一些 xml,我想做的就是xml:space="preserve"使用 c# 添加到根元素。

我试过这个:

结果是:

认为这相当于

但既然xml:space是特殊属性,我有点怀疑。

所以:

他们是一样的吗?

有没有办法以“干净”的方式将其添加到文档中?

0 投票
0 回答
150 浏览

c# - 从 C# 将 SOAP XML 反序列化为 WCF 服务方法以及如何在 soap xml 中获取 xatttibute 和 xelement 值

当我 Deserlize soap xml 时,我得到状态和令牌属性值 Null。我该如何解决这个问题。如何在模型中分配 xattribute 和 Xelement 值。如何在 wcf 服务中使用 xml serlize。

我在下面有肥皂 XML

模型:

如何对 xml 进行 serlize 以及如何获取 xatttibute 值?

0 投票
1 回答
442 浏览

c# - c# linq to xml 更新特定值的所有后代

我正在创建一个配置文件编辑器,目前正在实现更新现有数据的功能。我希望能够更新文件中具有特定属性的所有属性,例如更新用户名。

我的 XML 文件以下列方式表示用户:

我目前的尝试如下所示:

其中UserEditInput是当前用户名的名称,NewUser是新的替换值。

这会抛出一个NullReferenceException. 上面显示的表单中有许多“用户”XAttribute,其值等于UserEditInput. 这使我相信我没有以正确的方式引用所需的数据,没有正确修改属性,或两者兼而有之。

提前感谢您的任何帮助。

0 投票
1 回答
329 浏览

c# - XNamespace 作为附加属性,为什么

我想实现这一点:

这是我的 C# 代码:

我的 c# 代码的输出是:

如您所见,每个元素都有一个额外的属性xmlns:p4="xdt"。并且属性 Transform 和 Locator 以p4而不是xdt为前缀。为什么会这样?

我已经阅读了与 xml 命名空间相关的 msdn 文档(以及其他几篇类似的文章),但坦率地说,这很令人困惑,我没有发现任何有用的东西。

有没有什么好的文章,简而言之解释我的情况?