У меня есть простой класс в веб-сервисе ASP.NET.Он отлично работает в моей локальной системе и даже в среде разработки, которую я настроил, но каждый раз, когда я пытаюсь отправить файл на рабочий сервер, я получаю следующую ошибку:
Exception Error: The underlying provider failed on Open.
Вот кодэто называется:
public class FTPHelper
{
public static string SendFile(string ftpuri, string username, string password, string ftppath, string filename, byte[] datatosend)
{
if (ftppath.Substring(ftppath.Length - 1) != "/")
{
ftppath += "/";
}
FtpWebRequest ftp = (FtpWebRequest) FtpWebRequest.Create( ftpuri + ftppath + filename);
ftp.Method = WebRequestMethods.Ftp.UploadFile;
ftp.Credentials = new NetworkCredential(username, password);
ftp.UsePassive = true;
ftp.ContentLength = datatosend.Length;
Stream requestStream = ftp.GetRequestStream();
requestStream.Write(datatosend, 0, datatosend.Length);
requestStream.Close();
FtpWebResponse ftpresponse = (FtpWebResponse)ftp.GetResponse();
return ftpresponse.StatusDescription;
}
}
Как я могу устранить эту проблему.Сервер IIS 7.5, работающий на Windows 2008 Server.Я использую .NET 4.0.Есть ли простая причина, по которой FtpWebResponse не будет работать?
Если это проблема безопасности, то есть ли способ ее обойти?Мне нужно, чтобы это сработало немедленно.