我有一个SQL Server 2005查询生成一个大的结果集(最多几千兆字节):
SELECT * FROM Product FOR XML PATH('Product')
Run Code Online (Sandbox Code Playgroud)
运行查询会生成一个包含具有许多产品元素的文档的行:
Row 1:
<Product>
<Name>Product One</Name>
<Price>10.00</Price>
</Product>
<Product>
<Name>Product Two</Name>
<Price>20.00</Price>
</Product>
...
Run Code Online (Sandbox Code Playgroud)
我想更改查询,以便不是包含具有多个产品元素的单个文档的一行的结果集,而是返回多行,每行包含一个由单个Product元素组成的单个文档:
Row 1:
<Product>
<Name>Product One</Name>
<Price>10.00</Price>
</Product>
Row 2:
<Product>
<Name>Product Two</Name>
<Price>20.00</Price>
</Product>
Run Code Online (Sandbox Code Playgroud)
最后,我想使用IDataReader从C#中使用此查询,而不使用SQL Server或我的应用程序将整个结果集加载到内存中.我可以对SQL进行任何更改以启用此方案吗?