Допустим, у меня есть таблица в SQL Server, которая содержит результаты запроса с внутренним объединением.
Следующий XQuery:
select @code.query
(
'for $s in /root/row
return
<Foo Language="{data($s/@lang)}" Method="{data($s/@method)}" Returns="{data($s/@returnType)}">
<Bar ReferencedBy="{data($s/@callers)}" Static="{data($s/@static)}" />
</Foo>'
)
И его результат:
<Foo Language="C#" Method="getFoos" Returns="FooCollection">
<Bar ReferencedBy="Baz" Static="true" />
</Foo>
<Foo Language="C#" Method="getFoos" Returns="FooCollection">
<Bar ReferencedBy="Bar" Static="false" />
</Foo>
На самом деле мне бы хотелось следующее:
<Foo Language="C#" Method="getFoos" Returns="FooCollection">
<Bar ReferencedBy="Baz" Static="true" />
<Bar ReferencedBy="Bar" Static="false" />
</Foo>
Какой лучший способ сделать это с помощью XQuery, чтобы избежать обращения к LINQ и хеш-таблице?