Originariamente inviato da y.chen
GhostFire, con il tuo suggerimento non mi da eccezioni strane ma nel server ftp mi mette un file PUT senza estensione...
Forse è meglio che do un paio di dettagli in più:
Io devo inviare un file zip che creo in automatico e che intanto mi va a finire nella cartella di debug. Quindi dove tu hai scritto FilePath messo txtNomeFile.Text + ".zip" ma ho provato a mettere anche tutto il percorso incluso il nome del file.
Mi potresti aiutare?
Nel filepath va inserita la path del percorso del file da caricare, quindi:
c:\blablabla\myfile.zip
Per quanto ne sappia e dopo parecchie ricerche ho concluso che una volta uppato deve essere rinominato.
I passaggi da fare sarebbero questi:
-Crei il file
-Carichi il file immediatamente dopo la creazione
-Rinomini il file.
Questo è il codice che ho fatto per rinominarlo.
codice:
private void RenameFile()
{
reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(URLupload + "STOR"));
reqFTP.Method = WebRequestMethods.Ftp.Rename;
reqFTP.RenameTo = "Myname" + ".zip";
reqFTP.UseBinary = true;
reqFTP.Credentials = new NetworkCredential(username, password);
FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
ftpStream = response.GetResponseStream();
ftpStream.Close();
response.Close();
}
URLupload corrisponde alla cartella in cui è stato uppato il file mentre "STOR" corrisponde al nome del file che si trova all'interno del percorso assegnato.
al posto di MyName ci metti il tuo nome e poi sotto dichiari username password e tutto il resto...
infine richiami questa funzione subito dopo quella per l'upload.