c# - 在 FTP 服务器上创建目录

标签 c# ftp

我正在尝试在我的 FTP 服务器上创建一个目录。谷歌搜索显示我 this question here.所以我按照乔恩写的作为他的回答,并且:

    private static void MakeDirectory(string directory)
    {
        Log("Making directory...");

        var request = (FtpWebRequest)WebRequest.Create(directory);

        request.Method = WebRequestMethods.Ftp.MakeDirectory;
        request.Credentials = new NetworkCredential("user", "pass");

        try
        {
            using (var resp = (FtpWebResponse)request.GetResponse()) // Exception occurs here
            {
                Log(resp.StatusCode.ToString());
            }
        }
        catch (WebException ex)
        {
            Log(ex.Message);
        }
    }

我有一个方法来验证目录是否存在:

    public bool DirectoryExists(string directory)
    {
        bool directoryExists;

        var request = (FtpWebRequest)WebRequest.Create(directory);
        request.Method = WebRequestMethods.Ftp.ListDirectory;
        request.Credentials = new NetworkCredential("user", "pass");

        try
        {
            using (request.GetResponse())
            {
                directoryExists = true;
            }
        }
        catch (WebException)
        {
            directoryExists = false;
        }
        return directoryExists;
    }

检查确实有效。如果存在,则返回 true,如果不存在,则返回 false。但是,每当我运行 MakeDirectory() 时,我都会在上述行中遇到异常:

The remote server returned an error: (550) File unavailable (e.g., file not found, no access).

我错过了什么吗?为什么 GetResponse() 可以用于我的目录检查,但不能用于我的 MakeDirectory()

最佳答案

事实证明,这是运行我们网络服务器的公司的问题。他们昨晚做了一些 FTP 更新,这不仅影响了我自己,也影响了他们所有的客户。他们已经解决了这个问题。他们只花了一天时间就承认这是他们的错。

关于c# - 在 FTP 服务器上创建目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14613217/

相关文章:

java - 用于单个文件的多线程 FTP uploader

c# - Windows登录c#之前打开表单

c# - VS 2017 RC C# 的 SonarQube 误报 S1450

c# - Entity Framework TPT 继承子类型

c# - 具有自定义角色授权的 ASP.Net Core 3.0 Windows 身份验证

html - 上传到 ftp 时网站变小

c# - ASP.NET MVC 安全快速入门

linux - vsftpd 文件夹上不显示任何内容

encoding - 使用 Filezilla 到 FTP 时,俄语字符会变成垃圾

c - libcurl — 保持连接 "open"以上传多个文件 (FTP)