WebClient-Datei Hochladen zum web
Ich würde gern wissen ob ich den code richtig. Hochladen, die Datei manuell zu meinem Arbeitsplatz server, ich muss mit Login-ID und Passwort. Mit der; clode unten, sollte ich auch meine loginID und Passwort auch?
public void SaveLogsToWeb(string logFileName)
{
WebClient webClient = new WebClient();
string webAddress = null;
try
{
webAddress = @"http://myCompany/ShareDoc/";
webClient.Credentials = CredentialCache.DefaultCredentials;
WebRequest serverRequest = WebRequest.Create(webAddress);
WebResponse serverResponse;
serverResponse = serverRequest.GetResponse();
serverResponse.Close();
webClient.UploadFile(webAddress + logFileName, "PUT", logFileName);
webClient.Dispose();
webClient = null;
}
catch (Exception error)
{
MessageBox.Show(error.Message);
}
}
Wenn ich es laufen, Ausnahme wirft "(401) nicht autorisiert"
Dank.
- Dies ist eine web-app oder eine Konsolenanwendung?
- dies ist eine windows form app.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie nie mit Benutzer/Passwort-Informationen in einer code-Datei. Der Grund dafür ist, werfen sich ein 401 ist, weil die internet-Nutzer und der Anwendungspool läuft unter nicht über Schreibzugriff auf das Verzeichnis, den Sie versuchen zu schreiben.
Rechten Maustaste auf das Verzeichnis und add /ASPNET und /Netzwerk-Dienst als Benutzer mit Schreibberechtigung. Das sollte klären das problem. Stellen Sie sicher, Sie isolieren das Verzeichnis.
Hier ist eine gute msdn-Artikel: http://support.microsoft.com/kb/815153
Sehr spät vielleicht, aber Sie können fügen Sie diese 2 Zeilen vor
webClient.Upload..
um es fest: