标签: linq-to-xml

XDocument或XmlDocument

我现在正在学习,XmlDocument但我刚刚遇到XDocument,当我试图搜索他们的差异或好处时,我找不到有用的东西,你能告诉我为什么你会使用一个而不是另一个吗?

c# xml xmldocument linq-to-xml

487
推荐指数
6
解决办法
18万
查看次数

从String填充XDocument

我正在做一些小事情,我想弄清楚我是否可以从字符串加载XDocument.XDocument.Load()似乎将传递给它的字符串作为物理XML文件的路径.

我想尝试绕过首先必须创建物理XML文件的步骤,然后直接跳转到填充XDocument.

有任何想法吗?

c# xml linq-to-xml c#-3.0

346
推荐指数
4
解决办法
13万
查看次数

LINQ读取XML

我有这个XML文件

<root>
    <level1 name="A">
        <level2 name="A1" />
        <level2 name="A2" />
    </level1>
    <level1 name="B">
        <level2 name="B1" />
        <level2 name="B2" />
    </level1>
    <level1 name="C" />
</root>
Run Code Online (Sandbox Code Playgroud)

有人可以使用LINQ给我一个C#代码,这是打印此结果的最简单方法:(
如果它是一个level2节点,请注意额外的空间)

A
  A1
  A2
B
  B1
  B2
C
Run Code Online (Sandbox Code Playgroud)

目前我得到了这段代码

XDocument xdoc = XDocument.Load("data.xml"));
var lv1s = from lv1 in xdoc.Descendants("level1")
           select lv1.Attribute("name").Value;

foreach (var lv1 in lv1s)
{
    result.AppendLine(lv1);

    var lv2s = from lv2 in xdoc...???
}
Run Code Online (Sandbox Code Playgroud)

c# xml linq linq-to-xml

188
推荐指数
5
解决办法
40万
查看次数

将XDocument转换为XmlDocument,反之亦然

这是一个非常简单的问题.我使用XDocument生成XML文件.然后我想将它作为XmlDocument类返回.我有一个XmlDocument变量,我需要将其转换回XDocument以追加更多节点.

那么,在XDocument和XmlDocument之间转换XML 的最有效方法是什么?(不使用文件中的任何临时存储.)

c# xml linq-to-xml

187
推荐指数
4
解决办法
11万
查看次数

Linq与XML Descendants和Elements之间有什么区别

我在VS IntelliSense中遇到过这两个关键字.我试图谷歌搜索他们之间的差异,并没有得到一个明确的答案.其中哪一个具有中小型XML文件的最佳性能.谢谢

.net c# xml linq-to-xml

174
推荐指数
2
解决办法
4万
查看次数

在任何深度按名称查询XDocument元素

我有一个XDocument对象.我想使用LINQ在任何深度查询具有特定名称的元素.当我使用时Descendants("element_name"),我只获得了当前级别的直接子元素.我正在寻找的是相当于XPath中的"// element_name"...我应该使用XPath,还是有办法使用LINQ方法?谢谢.

.net c# xml linq linq-to-xml

140
推荐指数
6
解决办法
24万
查看次数

如何从url获取json字符串?

我正在将我的代码格式XML切换为JSON.

但我找不到如何从给定的URL获取JSON字符串.

URL是这样的:" https://api.facebook.com/method/fql.query?query=.....&format=json "

之前我使用过XDocuments,我可以使用load方法:

XDocument doc = XDocument.load("URL");
Run Code Online (Sandbox Code Playgroud)

这个JSON方法的等价物是什么?我正在使用JSON.NET.

c# json facebook webclient linq-to-xml

137
推荐指数
3
解决办法
23万
查看次数

如何通过XElement放置属性

我有这个代码:

XElement EcnAdminConf = new XElement("Type",
    new XElement("Connections",
    new XElement("Conn"),
    // Conn.SetAttributeValue("Server", comboBox1.Text);
    // Conn.SetAttributeValue("DataBase", comboBox2.Text))),
    new XElement("UDLFiles")));
    // Conn.
Run Code Online (Sandbox Code Playgroud)

如何将属性放入Conn?我想把这个我标记为注释的属性,但是如果我尝试在定义后将属性设置为Conn Conn 它们不是visibe ...所以我想以某种方式设置它们以便XML开始如下所示:

<Type>
  <Connections>
    <Conn ServerName="FAXSERVER\SQLEXPRESS" DataBase="SPM_483000" /> 
    <Conn ServerName="FAXSERVER\SQLEXPRESS" DataBase="SPM_483000" /> 
  </Connections>
  <UDLFiles /> 
</Type>
Run Code Online (Sandbox Code Playgroud)

c# xml linq-to-xml

125
推荐指数
1
解决办法
9万
查看次数

如何在XDocument中使用XPath?

有一个类似的问题,但似乎解决方案在我的情况下没有用:XDocument,XPath和命名空间的怪异

这是我正在使用的XML:

<?xml version="1.0" encoding="utf-8"?>
<Report Id="ID1" Type="Demo Report" Created="2011-01-01T01:01:01+11:00" Culture="en" xmlns="http://demo.com/2011/demo-schema">
    <ReportInfo>
        <Name>Demo Report</Name>
        <CreatedBy>Unit Test</CreatedBy>
    </ReportInfo>
</Report>
Run Code Online (Sandbox Code Playgroud)

以下是我认为它应该工作的代码,但它没有......

XDocument xdoc = XDocument.Load(@"C:\SampleXML.xml");
XmlNamespaceManager xnm = new XmlNamespaceManager(new NameTable()); 
xnm.AddNamespace(String.Empty, "http://demo.com/2011/demo-schema");
Console.WriteLine(xdoc.XPathSelectElement("/Report/ReportInfo/Name", xnm) == null);
Run Code Online (Sandbox Code Playgroud)

有没有人有任何想法?谢谢.

.net c# xml xpath linq-to-xml

108
推荐指数
3
解决办法
10万
查看次数

XDocument.ToString()删除XML编码标记

有没有办法在toString()函数中获取xml编码?

例:

xml.Save("myfile.xml");
Run Code Online (Sandbox Code Playgroud)

导致

<?xml version="1.0" encoding="utf-8"?>
<Cooperations>
  <Cooperation>
    <CooperationId>xxx</CooperationId>
    <CooperationName>Allianz Konzern</CooperationName>
    <LogicalCustomers>
Run Code Online (Sandbox Code Playgroud)

tb_output.Text = xml.toString();
Run Code Online (Sandbox Code Playgroud)

导致像这样的输出

<Cooperations>
  <Cooperation>
    <CooperationId>xxx</CooperationId>
    <CooperationName>Allianz Konzern</CooperationName>
    <LogicalCustomers>
    ...
Run Code Online (Sandbox Code Playgroud)

c# linq-to-xml

100
推荐指数
3
解决办法
5万
查看次数

标签 统计

c# ×10

linq-to-xml ×10

xml ×8

.net ×3

linq ×2

c#-3.0 ×1

facebook ×1

json ×1

webclient ×1

xmldocument ×1

xpath ×1