Tag: xml

使用Linq To XML,获取所有叶子路径的方法?

好的,我有以下XML树 1000 2000 3000 4000 5000 6000 从接收XDocument的方法我想生成一个字典,其中键是路径(实际上是XPath),值来自相应叶子中的值。 root/A/A1/A1A 1000 root/A/A1/A1B 2000 root/A/A1/A1C 3000 root/A/A2/A2A 4000 root/A/A2/A2B 5000 root/B/B1/B1A 6000 在Linq to XML中似乎很简单,但我无法理解它。

使用单引号和双引号编码XPath表达式

XPath(v1)无法编码表达式。 如果您只有单个OR双引号,那么您可以使用诸如的单词 //review[@name=”Bob’s Pizza”] //review[@name='”Pizza” Pam’] 但是如果你有两个例如[弗雷德的“Fancy Pizza”]那么你必须在XPath(C ++)中使用类似Escaping Strings的东西来生成 //review[@name=Concat(“Fred’s “,'”Fancy Pizza”‘)] 任何人都有c#函数来执行此操作? 一些链接很接近 使用MVP.XML库和XPathVariable (一个非常好的解决方案,但对我的需求有点重量级)。 不编码“和”存在的位置 为Concat操作添加的参数多于必要的参数,例如返回//评论[@ name = concat(’Fred’,”’,’s’,’“’,’Fancy Pizza’,”’,”) ] 编辑:一些答案建议逃避’与' 和“with "但是虽然这是有道理的但是它不起作用;使用XML片段尝试它: 和xpath //review[@name=’Bob's Pizza’]

解析格式错误的XML

我正在尝试将一个(可能)格式错误的HTML加载到XMLDocument对象中,但它失败了XMLExceptions …因为有额外的打开/关闭标记,以及格式错误的XML标记,例如而不是 如何使用数据中的所有错误来解析XML? 在解析之前是否可以应用任何XMLvalidation器来纠正这些错误? 或者处理exception解析什么可以解析?

从Web服务返回XML数据

创建返回一组x,y坐标的Web服务的最佳方法是什么? 我不确定对象是最好的返回类型。 当我使用它的服务时,我想让它以xml的forms返回,例如: 0 2 5 3 如果有人有更好的结构返回请帮助我这一切都是新的。

序列化.net对象并省略doctype?

我编写了一些.net代码来使用XMLSerializer类序列化对象。 public static string serialize(object o) { Type type = o.GetType(); System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(type); System.IO.StringWriter writer = new System.IO.StringWriter(); serializer.Serialize(writer, o); return writer.ToString(); } 输出如下: a b c 这很好,但我真正想要的是在开始时只获得没有XML doctype声明的根节点。 我想这样做的原因是因为我想使用XML序列化对象的根元素作为另一个XML文档的一部分。

使用XML数据类型调用存储过程

我只是尝试使用C#调用存储过程(SQL Server 2008)并将XMLDocument传递给采用SqlDbType.Xml数据类型的存储过程参数。 我收到错误:无法将参数值从XmlDocument转换为String。 下面是代码示例。 如何将XML文档传递给期望XML数据类型的存储过程? 谢谢。 XmlDocument doc = new XmlDocument(); //Load the the document with the last book node. XmlTextReader reader = new XmlTextReader(@”C:\temp\” + uploadFileName); reader.Read(); // load reader doc.Load(reader); connection.Open(); SqlCommand cmd = new SqlCommand(“UploadXMLDoc”, connection); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add(“@Year”, SqlDbType.Int); cmd.Parameters[“@Year”].Value = iYear; cmd.Parameters.Add(“@Quarter”, SqlDbType.Int); cmd.Parameters[“@Quarter”].Value = iQuarter; cmd.Parameters.Add(“@CompanyID”, SqlDbType.Int); […]

使用LINQ搜索XML文档

我有一个与此类似的xml文档: … 我想基于属性ID的值返回整个MainItem元素。 如果Attribute ID等于2,那么有效,然后返回MainItem元素。 我无法解决如何使用LINQ执行此操作。 谷歌似乎有很多信息,但我似乎无法找到我正在寻找的东西。 帮助不大? TIA 🙂

将此XML文档转换为我的对象的最简单方法是什么?

我有一个XMLDocument,我需要读入并转换为一组对象。 我有以下对象 public class Location { public string Name; public List Buildings; } public class Building { public string Name; public List Rooms; } 我有以下XML文件: 18 6 18 6 这样做的最佳方式是什么? 我应该自动将xmldocument序列化到对象还是我需要解析每个元素并手动转换为我的对象? 特别是,我试图弄清楚如何转换集合(位置,建筑物等)。 将此XML文件转换为基本的最佳建议是什么? List 对象?

如何在C#3.5中对大型XML文件进行流式读取

如何在包含xs:sequence的大型XML文件上对根元素进行流式读取,而不将整个文件加载到内存中的XDocument实例中?

我如何直接在C#中执行批处理命令?

嗨,我对c#和批处理文件有疑问。 我想执行批处理命令并将输出保存在c#中的字符串中。 但我只能执行该文件但不能将此内容保存在字符串中并在文本框中显示。 我的批处理文件: @echo关闭 “C:\ lmxendutil.exe”-licstatxml -host serv005 -port 6200> C:\ Temp \ HW_Lic_XML.xml notepad C:\ Temp \ HW_Lic_XML.xml 这是我的c#代码: private void btnShowLicstate_Click(object sender, EventArgs e) { string command = “‘C:\\lmxendutil.exe’ -licstatxml -host lwserv005 -port 6200”; txtOutput.Text = ExecuteCommand(command); } static string ExecuteCommand(string command) { int exitCode; ProcessStartInfo processInfo; Process process; processInfo = new […]