So laden Sie ein Bild mit FTP in ASP.NET C# hoch.C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 So laden Sie ein Bild mit FTP in ASP.NET C# hoch.

Post by Anonymous »

Ich verwende den folgenden Code, um ein Bild mit FTP hochzuladen. Ich begegne jedoch einen Fehler in dieser Zeile: < /p>
using (Stream requestStream = request.GetRequestStream())
{
requestStream.Write(fileData, 0, fileData.Length);
}
< /code>
Die Fehlermeldung, die ich erhalte, lautet: < /p>
System.Net.WebException: 'The remote server returned an error: (550) File unavailable (e.g., file not found, no access).'< /code> < /p>
Trotz dieses Fehlers habe ich verifiziert, dass: < /p>

Ich habe vollständige Zugriff auf den FTP -Server. macht den Fehler verwirrend, da er nur während der Implementierung in Code und nicht über den FTP -Client auftritt. Ich bin neu in der FTP-Integration in .NET, daher würde ich mich freuen, warum dieser Fehler auftritt und wie man ihn behebt.protected void btnUpload_Click(object sender, EventArgs e)
{
string uidvalue = Convert.ToString(HttpContext.Current.Session["uidvalue"]);
if (uidvalue == null)
uidvalue = "000";

if (fileUploadImage.HasFile)
{
string fileName = Path.GetFileName(fileUploadImage.FileName);
string fileExtension = Path.GetExtension(fileName).ToLower();
int fileSize = fileUploadImage.PostedFile.ContentLength;

// Validate file type
if (fileExtension != ".jpg" && fileExtension != ".jpeg" && fileExtension != ".png")
{
lblMessage.ForeColor = System.Drawing.Color.Red;
lblMessage.Text = "Only .jpg, .jpeg and .png files are allowed.";
return;
}

// Validate file size ( 2 * 1024 * 1024)
{
lblMessage.Text = "File size must be 2MB or less.";
return;
}

try
{
byte[] fileData = fileUploadImage.FileBytes;

string ftpUrl = "ftp://abc.com/images_c/" + fileName;
string ftpUsername = "imguser";
string ftpPassword = "imguserQ123";

FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftpUrl);
request.Credentials = new NetworkCredential(ftpUsername, ftpPassword);
request.Method = WebRequestMethods.Ftp.UploadFile;
request.ContentLength = fileData.Length;

request.UseBinary = true;
request.UsePassive = false;
request.EnableSsl = false;
request.KeepAlive = false;

// Error occurs here
using (Stream requestStream = request.GetRequestStream())
{
requestStream.Write(fileData, 0, fileData.Length);
}

using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
{
lblMessage.ForeColor = System.Drawing.Color.Green;
lblMessage.Text = "Upload successful: " + response.StatusDescription;
}
}
catch (Exception ex)
{
lblMessage.Text = "Error: " + ex.Message;
}
}
else
{
lblMessage.Text = "Please select a file.";
}
}
< /code>

Möchten Sie Vorschläge zum Debuggen oder Behebung der (550) Datei nicht verfügbar < /code> FTP -Fehler? < /p>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post