Zugriff auf sharepoint-Liste aus der windows-Anwendung
Kann mir jemand sagen, wenn ich habe einige Möglichkeiten, um den Zugriff auf sharepoint-Liste von windows-app?
Habe ich versucht folgende Art und Weise (ich bin unter Benutzer, sharepoint-Mitglied):
SPUserToken token = new SPUserToken(
BitConverter.GetBytes(WindowsIdentity.GetCurrent().Token.ToInt32()));
SPSite site = new SPSite(siteName, token);
aber kein Glück...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihre beste Wette ist, um mit einem web-Referenz für die Abfrage der SharePoint WebService ist GetListItems web-Methode:
http://msdn.microsoft.com/en-us/library/lists.lists.getlistitems.aspx
Wie Jason sagte, werden in der Lage, mit dem SharePoint-Objektmodell (D. H. die sharepoint dll ' s), die app muss laufen auf der gleichen Maschine wie SharePoint. Wenn es überall sonst können Sie nur verwenden, die Web-Dienste von SharePoint (oder Ihre eigenen erstellen und bereitstellen, die auf den sharepoint-server).
P. S. In SharePoint 2010 haben Sie die client-Objekt-Modell zur Verfügung, im Grunde eine Teilmenge des vollständigen sharepoint Objekt Modell (ein Bisschen wie Silverlight). Natürlich sp2010 ist noch in der beta....
Dieser Artikel bietet eine hervorragende und detaillierte Schritt für Schritt Anleitung, wie mithilfe von Linq und Web-services. Es funktioniert erstellen Sie eine Konsolenanwendung anstelle einer Windows-Anwendung, aber es ist sehr einfach zu übersetzen dies in eine Windows Form app, wenn nötig. Ich fand diesen Artikel sehr nützlich, wenn ich mal angefangen ein Programm die Kommunikation mit SharePoint-Listen, weil es deutlich zeigt, wie einfach es ist, die Arbeit mit dem web-service-Antwort von SharePoint mithilfe von LINQ.
Ist
siteName
auf dem gleichen computer, dass Sie die windows-Anwendung aus? Wenn nicht, dann werden Sie nicht in der Lage, den Zugriff auf diese Website, wenn Sie mithilfe von SharePoint 2007.Wenn die oben nicht das problem, dann überprüfen Sie, dass das Benutzerkonto
WindowsIdentity.GetCurrent()
ist mindestens ein Websitebesitzer aufsiteName
.