Communardo Software GmbH, Kleiststraße 10 a, D-01129 Dresden
0800 1 255 255

Zugriff auf Listeninhalte mit LINQ to SharePoint

SharePoint 2010 bie­tet mit der Assembly Microsoft.SharePoint.Linq.dll (zu fin­den im Ordner 14\ISAPI) die Möglichkeit, recht ein­fach Listeninhalte abzu­fra­gen. Wenn man sich etwas näher damit beschäf­tigt, kann man sehr viele Parallelelen zu LINQ to Objects und Linq to SQL entdecken.

Erster Schritt ist, eine Referenz auf die genannte Assembly hin­zu­zu­fü­gen. Ab die­sem Zeitpunkt steht der Namespace Microsoft.SharePoint.Linq zur Verfügung. Dieser beinhal­tet die Klasse DataContext, über die ähn­lich wie bei LINQ to SQL auf die Inhalte zuge­grif­fen wer­den kann. Die Initialisierung des Kontexts ist recht ein­fach – hierzu wird ein­fach im Konstruktor des Objekts die Url der zu ver­wen­den­den Site übergeben.

Vor dem Erfolg steht aber ein wenig Arbeit, denn der Zugriff ist typ­si­cher und so müs­sen für die ver­wen­de­ten Inhaltstypen Klassen ange­legt wer­den. Auch hier zei­gen sich wie­der Parallelen zu bereits Bekanntem: Mit Hilfe des Tools SPMetal (zu fin­den im Ordner 14\BIN) kön­nen die Klassen auf Basis einer bestehen­den Site auto­ma­tisch erstellt werden.

Ab die­sem Zeitpunkt ist es recht ein­fach, wie das fol­gende Beispiel zeigt:

DataContext data = new DataContext("http://mysite/");

EntityList<Page> wikiPages = data.GetList<Page>("Pages");
var filteredPages = from wikiPage in wikiPages
            where wikiPage.Name == "Inline-Process-Editor.aspx"
            select wikiPage;

foreach (var filteredPage in filteredPages)
{
    Console.WriteLine(filteredPage.Path);
}

Related Posts

neuer Blogpost: Zugriff auf Listeninhalte mit LINQ to SharePoint http://bit.ly/byOTuV
This com­ment was ori­gi­nally pos­ted on Twitter

neuer Blogpost: Zugriff auf Listeninhalte mit LINQ to SharePoint http://bit.ly/byOTuV
This com­ment was ori­gi­nally pos­ted on Twitter

RT @SharePoint_Team: neuer Blogpost: Zugriff auf Listeninhalte mit LINQ to SharePoint http://bit.ly/byOTuV
This com­ment was ori­gi­nally pos­ted on Twitter

RT @martin_hey: neuer Blogpost: Zugriff auf Listeninhalte mit LINQ to SharePoint http://bit.ly/byOTuV
This com­ment was ori­gi­nally pos­ted on Twitter

Comments are closed.

Pin It on Pinterest