ssis - SSIS FTP 不会发送文件
问题描述
我目前正在尝试使用失败的 SSIS FTP 任务将单个文件发送到 FTP 站点,并且收到错误消息:
[FTP 任务] 错误:无法使用“FTP 连接管理器”发送文件。
使用 SSIS FTP 任务,我正在尝试将文件从本地驱动器发送到 FTP 根文件夹。我拥有读取和写入的所有权限。我尝试删除 FTP 服务器上的文件(成功),使用 WinSCP 移动文件(成功),从 FTP 文件夹中删除文件(成功)以及在 FTP 站点上创建目录。但是,当我尝试从本地文件夹发送到 FTP 站点的根驱动器时,出现上述错误。我的本地路径也包括我要发送的文件
C:\WebSites\Files\Import\SFTP\Extract\CE_CS_Shipment.xlsx
还有什么我可以尝试的,因为我无能为力。
解决方案
我似乎找到了一种解决方法,因为在 SSIS 中使用 FTP 任务并没有让步。我在 FTP 站点上创建了文件,然后复制了流,效果很好。
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(sftpServer + result);
request.Credentials = new NetworkCredential(sftpUser, strFTPPassword);
request.Method = WebRequestMethods.Ftp.UploadFile;
using (Stream fileStream = File.OpenRead(archiveFolder.Replace("//", "/") + @"/" + result))
using (Stream ftpStream = request.GetRequestStream())
{
fileStream.CopyTo(ftpStream);
}
如果其他人正在寻找或解决同样的问题,这现在可以完美地工作。
推荐阅读
- docker - 无法使用文件配置 Docker 守护程序(配置文件
- c++ - 我可以在不创建自己的 Docker 映像的情况下在 Gitpod 中加载其他库吗?
- python - 如何连续发送通过 Request.Get.get 收到的列值?
- react-snap - React-Snap 与 Create-React-App 和 Service Worker
- sql-server - 在 MVC 中使用 nvarchar 主键的缺点
- select - SELECT 语句中的 Oracle 11g PLSQL 集合
- firebase - 如何为有状态小部件编写测试?
- php - 如何在不获取非法字符串偏移的情况下循环
- android - 无法下载 kotlin-reflect.jar (org.jetbrains.kotlin:kotlin-reflect:1.3.0):没有可用于离线模式的缓存版本
- r - 在处理的参数上定义默认的 R 函数参数