c# – LINQ to XML:忽略属性的情况
发布时间:2020-12-15 08:40:49 所属栏目:百科 来源:网络整理
导读:我使用LINQ to XML来处理由Autodesk公司创建的PackageContents.xml文件.公司已定义此XML文件 here的结构,但没有XSD架构. 我有一个问题:这家公司违反了规则……通常情况下,元素和属性都是无效的.例如,可以定义“Url”属性而不是“URL”属性(不同的大小写).
我使用LINQ to
XML来处理由Autodesk公司创建的PackageContents.xml文件.公司已定义此XML文件
here的结构,但没有XSD架构.
我有一个问题:这家公司违反了规则……通常情况下,元素和属性都是无效的.例如,可以定义“Url”属性而不是“URL”属性(不同的大小写). 但是case is important for XML(或,in English):
“网址”不等于“网址” – 找不到此类属性. 我可以通过LINQ to XML(或其他)解决这个问题,或者我不能解决? 解决方法
虽然myXelement.Attribute(“URL”)需要正确的案例是正确的,但没有什么能阻止你做
var attribute = x.Attributes() .SingleOrDefault(xa => string.Equals(xa.Name.LocalName,"Url",StringComparison.InvariantCultureIgnoreCase)); 用合适的扩展或静态帮助方法包装它,你的消费代码不应该太糟糕. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |