У меня есть служба Windows, которая пытается создать папку на моем FTP-сервере. Сервис работает локально без проблем. Однако, когда я пытаюсь выполнить на сервере, я получаю 530. Что действительно странно, так это то, что я создал небольшую страницу .aspx, которая запускает тот же код, и она работает. Это не работает только в моем сервисном коде.
var ftpLocation = ConfigurationManager.AppSettings["FtpLocation"];
var ftpUserName = ConfigurationManager.AppSettings["FtpUserName"];
var ftpPassword = ConfigurationManager.AppSettings["FtpPassword"];
var request = (FtpWebRequest)WebRequest.Create(ftpLocation);
request.Method = WebRequestMethods.Ftp.MakeDirectory;
request.EnableSsl = true;
request.Credentials = new NetworkCredential(ftpUserName, ftpPassword);
try
{
logger.Debug("Calling MakeDirectory for " + ftpPath);
using (var response = (FtpWebResponse)request.GetResponse())
{
if (response.StatusCode != FtpStatusCode.PathnameCreated)
throw new ApplicationException(string.Format("FTP failed with the following response: {0} - {1}",
response.StatusCode, response.StatusDescription));
response.Close();
}
logger.Debug("Calling MakeDirectory for " + ftpPath);
}
Я также должен отметить, что в каталоге, который я пытаюсь создать, есть пробел, но опять же он работает на 100% правильно на моей странице aspx.