Запрошенный URI недействителен для этой команды FTP

Я добавил следующий код в свое приложение С#.net в visual studio 2010

 WebRequest request = WebRequest.Create("ftp://myftp.com");
            request.Method = WebRequestMethods.Ftp.MakeDirectory;
            request.Credentials = new NetworkCredential("myusername", "12344");
            using (var resp = (FtpWebResponse)request.GetResponse())
            {
                Console.WriteLine(resp.StatusCode);
            }

Но я получаю следующую ошибку.

The requested URI is invalid for this FTP command.

Пожалуйста, предложите решение. Благодаря

Ответ 1

Если вы просто хотите проверить информацию о файлах, попробуйте вместо этого изменить request.Method на WebRequestMethods.Ftp.ListDirectoryDetails:

WebRequest request = WebRequest.Create("ftp://myftp.com");
        request.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
        request.Credentials = new NetworkCredential("myusername", "12344");
        using (var resp = (FtpWebResponse)request.GetResponse())
        {
            Console.WriteLine(resp.StatusCode);
        }

Ответ 2

Uri должен быть ftp://+ IP или ftpServerName +/Folder_to_create_Name

Итак, см. код:

 WebRequest request = WebRequest.Create("ftp://myftp.com/FOLDER_TO_CREATE/");
 request.Method = WebRequestMethods.Ftp.MakeDirectory;
 request.Credentials = new NetworkCredential("myusername", "12344");

 using (var resp = (FtpWebResponse)request.GetResponse())
 {
       Console.WriteLine(resp.StatusCode);
 }

Ответ 3

Необходимо указать подкаталог, который вы хотите создать; вы не можете создать корень, и это то, что вы пытаетесь сделать. Отсюда ошибка.