2016-11-11 2 views
-1

Wie kann ich Bild in eine SharePoint-Liste hochladen "benutzerdefinierte Liste"nicht Bibliothek mit CSOM C#? HierBild in Sharepoint generische Liste mit Csom hochladen C#

ist das, was ich bisher versucht:

FieldUrlValue url = new FieldUrlValue(); 
url.Url = FileUpload.PostedFile.FileName; 
url.Description = "Your description here"; 
newItem["Image"] = url; 
+0

Ich habe Fehler "die URL ist ungültig", wenn Upl oad image from desktop – zzzz

+0

Wenn Sie eine URL (Feld-URL in Ihrer benutzerdefinierten Liste) verwenden, muss sich Ihr Image bereits auf dem SharePoint befinden (und legen Sie die URL von sharePoint nicht von Ihrem lokalen Computer fest). Deshalb haben Sie einen Fehler "Die URL ist ungültig" – Nico

Antwort

0

Sie diesen Code verwenden können Dokumente in SharePoint über das Hochladen CSOM:

using (ClientContext ctx = new ClientContext("http://urlToYourSiteCollection")) { 
    FileCreationInformation fci = new FileCreationInformation(); 
    fci.Content = System.IO.File.ReadAllBytes("PathToSourceDocument"); 
    fci.Url = System.IO.Path.GetFileName("PathToSourceDocument"); 
    Web web = ctx.Web; 
    List targetDocLib = ctx.Web.Lists.GetByTitle("yourTargetLibrary"); 
    ctx.ExecuteQuery(); 
    Microsoft.SharePoint.Client.File newFile = targetDocLib.RootFolder.Files.Add(fci); 
    ctx.Load(newFile); 
    ctx.ExecuteQuery(); 
} 

Wenn Sie Eigenschaften des neuen festlegen möchten Artikel, können Sie es auf diese Weise tun:

ListItem lItem = newFile.ListItemAllFields; 
lItem.File.CheckOut(); //CHECK OUT VERY IMPORTANT TO CHANGE PROPS 
ctx.ExecuteQuery(); 
lItem["yourProperty"] = "somewhat"; 
lItem.Update(); 
lItem.File.CheckIn("Z", CheckinType.OverwriteCheckIn); 
ctx.ExecuteQuery(); 
Verwandte Themen