Я пробовал различные ответы здесь, на StackOverflow, но никто не решил проблему.Я пытаюсь загрузить изображение по типу файла в папку с именем Images.Проблема в том, что он всегда попадает в зацепку в попытке / поймать.У меня есть блок кода ниже, но удалил учетные данные для безопасности.Пожалуйста, помогите!
[HttpPost]
public ActionResult UploadPhoto(HttpPostedFileBase file)
{
string http = "https://serverName";
string httpFolder = "/Images";
byte[] fileBytes = null;
string fileName = Path.GetFileName(file.FileName);
using (StreamReader fileStream = new StreamReader(file.InputStream))
{
fileBytes = Encoding.UTF8.GetBytes(fileStream.ReadToEnd());
fileStream.Close();
}
try
{
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(http + httpFolder + fileName);
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential("username", "password");
request.ContentLength = fileBytes.Length;
request.UsePassive = true;
request.UseBinary = true;
request.ServicePoint.ConnectionLimit = fileBytes.Length;
request.EnableSsl = false;
using (Stream requestStream = request.GetRequestStream())
{
requestStream.Write(fileBytes, 0, fileBytes.Length);
requestStream.Close();
}
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
response.Close();
ViewBag.FileUploaded = "File uploaded succesfully!";
}
catch (WebException ex)
{
throw new Exception((ex.Response as FtpWebResponse).StatusDescription);
}
return RedirectToAction("UploadPhoto");
}