EDIT
Zunächst einmal das @
Zeichen gibt es die Zeichenfolge als wörtliche Flagge. Es erspart Ihnen, Zeichen wie Backslashes zu entkommen. z.B.
string path = "Z:\\Path\\To\\File.txt";
string path = @"Z:\Path\To\File.txt";
Zweitens, wenn Sie nur FTP-Zugriff auf den anderen Server haben, nehmen Sie dann das FileUpload.FileBytes
Eigentum des Fileupload-Steuerelement. Das gibt Ihnen einen byte[]
des Dateiinhalts.
Von diesem verwenden Sie die System.Net.FtpWebRequest
& System.Net.FtpWebResponse
, um Ihre Datei auf den FTP-Account hochzuladen.
Theres einig Beispiel-Code hier in VB.NET, aber es sollte einfach genug für Sie
http://www.programmingforums.org/thread15954.html
ORIG
Die Datei-Upload-Steuerelement, das Sie mit der Datei zur verfügung, um herauszufinden, auf deinem Webserver.
Es wäre Ihnen überlassen, diese Datei dann vom Webserver auf den Server zu kopieren/speichern, auf dem FTP gehostet wird.
Haben Sie ein UNC-Pfad/zugeordnetes Laufwerk auf Ihrem anderen Server, auf dem Sie speichern können?
Das Fileupload-Steuerelement hat eine .SaveAs()
Methode so ist es nur eine einfache Sache der
if (FileUpload1.HasFile)
try
{
FileUpload1.SaveAs(@"Z:\Path\On\Other\Server\" + FileUpload1.FileName);
}
danke für die Antwort .. Können Sie mir sagen, was das @ -Zeichen für verwendet? und wenn ich eine IP-Adresse anstelle eines physikalischen Pfades verwenden kann, da sich die Webseite auf einem anderen Server befindet als der Server, auf den ich die Dateien hochladen werde, z. fpt.mydomain.com/images und in diesem Fall, wenn dies möglich ist, werde ich wahrscheinlich Benutzer Anmeldeinformationen richtig? Wenn das so ist, wie? –
Die @ Site erstellt eine Vertabum-Zeichenfolge, wodurch die Notwendigkeit der Escape-Funktion entfernt wird. \ As \\ –
Oder wörtlich, even;) –