.net - C#通过asp.net传输大文件到远程服务器的多种方式

标签 .net ftp connection transfer

我正在用 C#/VS2005 编写一个程序来备份我们的生产数据库,压缩它,并将其传输到远程服务器。我在远程服务器上设置了一个简单的 ftp 站点。

问题是文件仅传输了大约一半(~500 - 600 MB)并且程序抛出异常:

“现有连接被远程主机强制关闭”

我使用的代码基本上是从这里剪切和粘贴的,由 Jaimon Mathew 编写,使用套接字:

http://www.csharphelp.com/archives/archive9.html

我已经研究了这个问题,看起来我无法采取任何措施来防止连接被关闭,而我解决这个问题的唯一方法是使用套接字的“异步”方法。

我一直在搜索,但找不到任何示例代码来执行此操作,我不敢相信我尝试执行的这个简单任务被证明如此困难。

是否有一种简单的方法可以将大型(~1.2 GB)本地文件传输到远程 ftp 站点,如果远程主机关闭连接,该方法也不会失败(我猜它必须重新连接并恢复传输)?

如果我的老板发现我已经在这上面花费了多少时间,而且我们在远程服务器上仍然没有前一天的备份,他会杀了我。

我更愿意在 .NET 程序中完成所有工作(我们的系统目前是一个巨大的 Rube Goldberg 机器),但我需要一个快速且简单的解决方案。

谢谢

史蒂夫

最佳答案

这是一个whole bunch of C# examples如何进行 FTP。特别是看看Restart/Retry FTP Upload示例。

关于.net - C#通过asp.net传输大文件到远程服务器的多种方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/757572/

相关文章:

c# - 连接数据库的完美方式?

Visual Studio 2013 中的 FTP 发布错误

Java Riak 连接问题

sql - 如何将空值发送到存储过程?

c# - ASP.net 和 MySQL 之间的通信问题

ftp - NppFTP 第一次尝试上传总是超时

java - 无法让类(class)项目 FTP 服务器发送 226

java - c3p0-0.9.5.2 语句展开导致抽象方法错误

C# TransactionScope - L2E

c# - C# datagridview 中的存储过程而不是列表框