SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Eventreceiver Copy To Filesystem -_>Unauthorized

Unbeantwortet Dieser Beitrag hat 1 Antworten

Ohne Rang
143 Beiträge
Hans Abelshausen erstellt 21 März 2013 15:45
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo zusammen,

ich habe einen Eventreceiver geschrieben, der mir beim Erstellen eines Dokuments in einer Dokumentenbibliothek das Dokument nehmen und ins Filesystem kopieren soll. Das Problem ist dann folgendes, ich versuche die Datei mittels DownloadFile ins Filesystem zu schreiben. Das Ganze funktioniert auf dem Server direkt ohne Probleme. Führe ich es aber nicht auf dem Server aus, löscht er mir das Dokument...

Hier mein Code und es würd mich freuen, wenn ihr mir eine Lösung sagen könntet...:

client.UseDefaultCredentials =

 

 

client.Credentials = CredentialCache.DefaultCredentials;

string

 

 

 

if

 

 

 

Directory.CreateDirectory(copyFolder);

 

 

string

 

 

 

 

modifiedURL = weburl.Replace("/internerServername/", "/portal.test.de/" );

client.DownloadFile(String.Concat(modifiedURL, 

 

"/", item.File.ToString()), copyFile);
(!Directory.Exists(copyFolder)) string copyFile = String.Concat(copyFolder, @"\", item.File.Name);

copyFile = copyFile.Replace(

 

"/",@"\");
copyFolder = String.Concat(@"\\portal.test.de\", item.File.ParentFolder.ToString());true;

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 21 März 2013 16:29
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Würdest Du bitte beim nächsten Mal den Code nicht direkt aus Visual Studio hierher kopieren, sondern über den Umweg von z.B. Notepad? Danke, aber das kann man so einfach nicht lesen.

Was ist denn client? System.Net.WebClient? Und in welches Dateisystem möchtest Du die Datei? Server oder Client?

Wenn Du das in einem EventReceiver machst, kannst Du Dir den ganzen Aufwand sparen. Über properties.ListItem.File hast Du direkten und authentifizierten Zugriff auf die Datei. Über dessen Open*() Methoden kommst Du an den Inhalt und kannst in direkt auf die Platte schreiben.

Viele Grüße
Andi
af @ evocom de
Blog