在本地下载之前检查文件是否仍在FTP位置上使用的任何方法

时间:2015-08-24 07:53:09

标签: ftp winscp winscp-net

我使用WinSCP .NET库从FTP下载文件。

我的代码是

session.ExecutablePath = _appSettings["ApplicationFolderPath"] + "WinSCP.exe";
session.Open(sessionOptions);
var obj = session.ListDirectory(_appSettings["SFTP_IncomingFileFolder"]);

if (obj != null && obj.Files != null)
{
    foreach (RemoteFileInfo fileOrDo in obj.Files)
    {
        if (fileOrDo.Name == "." || fileOrDo.Name == ".." || fileOrDo.FileType == 'd' || fileOrDo.FileType == 'D')
        {
            continue;
        }

        // here I want's to check whether file is not in use  before calling  session.GetFiles(...,...).Check();
    }                    
 }

我想要的是在下载之前检查FTP位置上没有使用的文件。知道我应该使用什么界面。

1 个答案:

答案 0 :(得分:1)

如果通过FTP协议使用文件,则无法测试。

不仅使用WinSCP .NET程序集,而且通常也是如此。

所以你所能做的就是尝试下载文件并优雅地处理任何失败。