我正在使用一些 SQL 报告定义文件 (RDL),使用 LINQ 提取组件查询语句以进行验证。我正在尝试从 <DataSets> 元素下提取 <DataSet> 元素。我似乎被 <DataSet><Fields><Field> 下的元素之一挂断了,它有一个命名空间限定符 <rd:TypeName>
通过指定默认命名空间,我一直在将 LINQ to XML 用于没有命名空间限定符的文件的其他部分。RDL 指定了两个命名空间:
xmlns="http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
但是,当我尝试获取 <DataSets> 元素时,出现以下错误:
System.Xml.XmlException - ':' 字符,十六进制值 0x3A,不能包含在名称中。
我知道这与其中一个子元素中的命名空间限定符 (rd:) 有关,但我很难获得有效的 LINQ 表达式。任何帮助,将不胜感激。谢谢!