如何编写xpath查询,使其返回一个具有字符串数组的对象?似乎无法获取值或字符串。
<Info>
<EmailAddresses>
<string>email1</string>
<string>email2</string>
<string>email3</string>
</EmailAddresses>
</Info>
SELECT Table.[Object].value('(//Info/EmailAddresses)[1]','nvarchar(max)') As 'EmailAddresses' from Table where ... 导致无法隐式原子化或将“fn:data()”应用于复杂的内容元素,在推断类型“”element“”中找到类型“”ArrayOfString“”(
SELECT Table.[Object].query('(/Info/EmailAddresses)[1]') As 'EmailAddresses' from Table where ... 将返回整个
<EmailAddresses>
<string>email1</string>
<string>email2</string>
<string>email3</string>
</EmailAddresses>这使得在代码中解析变得很奇怪,因为它必须被传输到object,而不是C#中的字符串列表
发布于 2013-08-08 10:37:04
此示例查询返回xml中的电子邮件列表
declare @x xml
set @x =
'<Info>
<EmailAddresses>
<string>email1</string>
<string>email2</string>
<string>email3</string>
</EmailAddresses>
</Info>'
SELECT r.nref.value('.','nvarchar(max)') As 'EmailAddresses'
from @x.nodes('/Info/EmailAddresses/*') r(nref)然后,您可以在C#中以任何您想要的方式解析此结果集中的字符串-将它们放入字符串数组或其他内容中……
https://stackoverflow.com/questions/18107848
复制相似问题