我正在使用 C#,并且我编写了一个本地安装的应用程序,它可以动态生成需要在 FTP 服务器上的文件。
我是否将它们生成到磁盘然后将它们上传到 FTP 服务器?或者有没有办法打开一个流到 FTP 服务器并直接写入文件?
检查我在这个答案中给出的代码示例,不依赖于写入文件。它不是特定于 SQL 的,只是关于如何使用 SQL CLR 集成程序集将 sql 查询的输出上传到 FTP 服务器的建议。方法中的 for 循环只是为了演示写入 FTP 流。您应该能够根据需要进行返工:
你应该听课:
System.Net.FtpWebRequest
您将看到它的参数是流,您可以从任何来源向它们发送数据。
在搜索 .Net 功能时,您应该了解 Visual Studio 的对象浏览器可在以下位置访问:
查看 > 其他窗口 > 对象浏览器
提供对所有已知程序集 .Net 对象的搜索。
更好的方法是将文件保存在本地,然后再上传,因为上传过程可能会出现问题。
由于您使用的是 c#,我想您可能在 Windows 环境中。我对此知之甚少:)
如果您正在处理 unix 环境,您可以通过 SSH 管道输出您的输出,这也将处理加密开销。