我必须从 SQL 中获取 DataTable,然后将其转换为 XML(我不能使用 SQL XML)并保存到文件中。问题是该文件将是 5 GB,我没有足够的内存来下载它并在内存中一次将其转换为 XML。我知道我应该能够使用 DataReader 将数据分块转换并推送到文件流,但我不知道如何真正做到这一点。我该怎么做?
- 异步连接到 SQL 服务器
- 异步调用存储过程
- 从 DataReader 异步读取数据
- 将数据从 DataReader 转换为 XML 并异步保存到文件
这一切都必须是异步的,因为它在处理多个请求的服务器上,我们不能为每个请求设置一个线程阻塞。