我正在尝试在下面显示的代码示例中获取 XML 中x:String 节点(L1.0.0.0)的值。示例中的 XML 在我们对构建进行排队时由 TFS 2010 生成。XML 有两个主要节点和Dictionary和x:String,我已经尝试过类似于另一个堆栈溢出线程的查询,并且我已经将其包括在额外的研究中。有人对我的 XQuery 不工作有什么建议吗?
DECLARE @XML XML;
SET @XML = '<Dictionary x:TypeArguments="x:String, x:Object"
xmlns="clr-namespace:System.Collections.Generic;assembly=mscorlib"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<x:String x:Key="GetVersion">L1.0.0.0</x:String>
</Dictionary>'
;WITH XMLNAMESPACES(
'clr-namespace:System.Collections.Generic;assembly=mscorlib' AS a,
'http://schemas.microsoft.com/winfx/2006/xaml' AS x)
SELECT @XML.value('(/Dictionary/x:String)[1]', varchar(100)) AS BuildLabel
附加研究 Stack Overflow T-SQL, XQuery Invalid Column