Zugreifen auf SharePoint 2010-Listendaten mithilfe des LINQ to SharePoint-Anbieters
Zusammenfassung: Informationen zum Verwenden des LINQ to SharePoint-Anbieters zum Hinzufügen und Lesen von Elementen in einer Microsoft SharePoint 2010-Liste mithilfe von LINQ (Language Integrated Query).
Letzte Änderung: Mittwoch, 12. September 2012
Gilt für: SharePoint Foundation 2010 | SharePoint Server 2010 | Visual Studio | Visual Studio 2008 | Visual Studio 2010
**Bereitgestellt von:**Ted Pattison Critical Path Training (Microsoft SharePoint MVP)
Mit dem LINQ to SharePoint-Anbieter können Elemente in einer Microsoft SharePoint 2010-Liste hinzugefügt und gelesen werden. Für die in diesem Videotutorial beschriebene Technik muss das Hilfsprogramm SPMetal ausgeführt werden, um eine benutzerdefinierte Datenkontextklasse und Entitätsklassen zu erstellen. Mithilfe dieser Klassen können Sie auf SharePoint-Listendaten auf stark typisierte Weise zugreifen. Für den Zugriff auf Daten in einer SharePoint 2010-Liste mithilfe des LINQ to SharePoint-Anbieters müssen Sie mit dem Befehlszeilentool SPMetal (SPMetal.exe) Entitätsklassen generieren. Bei der Ausführung des Hilfsprogramms SPMetal an der Eingabeaufforderung müssen Sie die folgenden drei Parameter übergeben: die URL zur Website, welche die Liste enthält, einen Namespace zum Erstellen der Entitätsklassen sowie den Namen einer Ausgabedatei. (Geben Sie den gesamten Befehl in einer einzelnen Zeile ein. Durch die Zeilenumbrüche im folgenden Beispiel soll lediglich die Lesbarkeit erhöht werden.)
Anzeigen von Listenelementen mithilfe eines DataGrid-Steuerelements von ASP.NET Mit einem DataGrid-Steuerelement von Microsoft ASP.NET können Sie die Daten anzeigen, die von einer Abfrage zurückgegeben werden. Wenn Sie das AutoGenerateColumns-Attribut auf true festlegen, kann mit dem DataGrid-Steuerelement automatisch eine Rasterspalte für jedes Feld im Resultset erstellt werden.
Die Datenkontextklasse stellt eine Verbindung dar und muss demzufolge mithilfe der URL einer Zielwebsite initialisiert werden. Nachdem Sie eine Instanz der Datenkontextklasse erstellt haben, wird jede Liste in der Website als Eigenschaft verfügbar gemacht. Dadurch können Sie eine LINQ-Anweisung mit stark typisiertem Zugriff auf Listenspalten erstellen. Auf diese Weise können Sie auf einfache Weise eine Abfrage für eine SharePoint-Liste ausführen und das Ausgaberesultset an das DataGrid-Steuerelement von ASP.NET binden.
Hinzufügen neuer Listenelemente Die von SPMetal erstellten Datenkontext- und Entitätsklassen stellen eine einfache Methode für das Hinzufügen eines neuen Listenelements dar. SPMetal generiert eine Entitätsklasse für jede Liste in einer Zielwebsite. Wenn eine Website die Liste "Developers" enthält, generiert SPMetal die Entitätsklasse DevelopersItem mit einer Reihe von Eigenschaften, die den Listenspalten zugeordnet sind. Sie erstellen und initialisieren einfach eine Entitätsklasseninstanz. Anschließend rufen Sie die InsertOnSubmit-Methode und dann die SubmitChanges-Methode auf.
In SharePoint 2010 gibt es den neuen LINQ-Anbieter "LINQ to SharePoint", mit dem Sie auf SharePoint-Listendaten mithilfe von LINQ-Programmiertechniken zugreifen können. Die Verwendung des LINQ to SharePoint-Anbieters ist optional, bietet jedoch mehrere Vorteile im Vergleich zu älteren Techniken zum Abfragen und Aktualisieren von Listenelementen, wie beispielsweise die Verwendung des SharePoint-Objektmodells oder der CAML-Programmiersprache:
Führen Sie für die Verwendung des LINQ to SharePoint-Anbieters die folgenden allgemeinen Schritte aus:
|
Video anschauen (00:20:01) Informationen zum Autor Ted Pattison ist Autor, Trainer und Mitbegründer von Critical Path Training, einem auf Schulungen zu SharePoint-Technologien spezialisierten Unternehmen. Als Microsoft SharePoint-MVP (Most Valuable Professional) arbeitet Ted Pattison häufig mit dem Developer Platform Evangelism-Team von Microsoft zusammen, um SharePoint-Schulungsunterlagen für Entwickler in einem frühen Stadium des Produktlebenszyklus (Alpha- und Betaphase) zu erstellen. Ted schreibt im MSDN Magazine die an Entwickler gerichtete Kolumne "Office Space". |