Datenzugriff in SharePoint: SharePoint Listen

27. August 2012

Dies ist der achte Teil einer Serie, die sich mit der Frage beschäftigt auf welche Arten Konfigurationen in Applikationen unter SharePoint gespeichert werden können. Es wird zuerst immer kurz die Methode vorgestellt, gefolgt von einem kurzen Beispiel und den Vor- und Nachteilen.

Eine vollständige Übersicht über bisherige und noch folgende Artikel ist hier zu finden.

In diesem Teil werden SharePoint Listen vorgestellt. Diese sind DIE zentrale Funktion innerhalb von SharePoint und bieten vielfältige Möglichkeiten zum Pflegen von Einstellungen an. Diese Methode ist hervorragend geeignet wenn Benutzer die Einstellungen selber pflegen können sollen.

Erstellen der Liste

Eine neue Liste ist sehr einfach zu erstellen. Hierzu gehen wir auf „Site Actions“ und wählen „More Options“:

801

Hier wählen wir „List“ -> „Custom List“ und geben der Liste einen Namen:

802

SharePoint legt für uns jetzt eine einfache Liste ohne besondere Spalten an. Wir fügen nun zwei neue Spalten mit „Create Column“ hinzu:

803

Die erste Spalte nennen wir „Wert“, die zweite „Kategorie“. Unsere Liste ist nun fertig und kann mit Beispielen gefüllt werden.

Zugriff auf Liste

Als Nächstes erstellen wir ein neues WebPart um in diesem die Werte auszulesen und anzuzeigen:

[ToolboxItemAttribute(false)]

public class WebPartMitListe : WebPart

{

protected override void CreateChildControls()

{

var konfigItems = new List<String>();

// Liste auslesen

var listItems = SPContext.Current.Web.Lists["Beispiel Liste"].Items;

// Items aus der Liste auf Datenobjekt mappen

foreach (SPListItem item in listItems)

{

konfigItems.Add(

string.Format("Name: {0}, Wert: {1}",item.Title, item["Wert"]));

}

 

// Gridview erzeugen und hinzufügen

var gridView = new GridView

{

ID = "GridViewKonfig",

AutoGenerateColumns = true,

DataSource = konfigItems

};

 

gridView.DataBind();

Controls.Add(gridView);

}

}

Der benötigte Code sehr überschaubar. Wichtig ist auch zu beachten, dass eine Liste auf verschiedenen Ebenen in der SharePoint Hierarchie abgelegt sein kann:

Ebene

Ort

SPFarm

Liste in Central Administration.

SPSite

Liste im root Web der Site Collection.

SPWeb

Liste in SPWeb

Listen auf External Content Types

Soll die Konfiguration nicht in SharePoint abgelegt werden oder eine bestehende Konfigurationsdatenbank verwendet werden, können wir auch eine Liste auf die im letzten Artikel vorgestellten External Content Types (ECT) aufsetzen. Dies geht sehr komfortabel über den SharePoint Designer. Dazu öffnen wir mit dem Designer wieder die Site, navigieren zu den External Content Types und wählen den im letzten Artikel erstellen ECT.

Im Ribbon wählen wir den Punkt „Create Lists & Form“.

804

Hier geben wir der Liste einen Namen und drücken „Ok“:

805

Der Designer legt nun für uns eine Liste in SharePoint an. Diese funktioniert wie eine normale Liste in SharePoint, allerdings mit ein paar Einschränkungen z.B. ist keine Versionierung mehr verfügbar.

Fazit

Wie immer zum Abschluss noch einmal die Vor- und Nachteile der Methode:

Vorteile:

  • Administration

    Zum Erstellen und Bearbeiten von Einträgen kann die gewohnte SharePoint Oberfläche verwendet werden. Zusätzlich können Einträge von SharePoint Versioniert werden.

  • Sicherheit

    Rechte können sehr granular in SharePoint verwaltet werden.

  • Scope

    Listen können auf verschiedenen Ebenen angelegt werden.

  • Flexibel

    Über External Content Types können beliebige Datenquellen angebunden werden. SharePoint kümmert sich hierbei um den Datenzugriff

Nachteile:

  • Implementierung

    Umsetzung ist aufwändiger im Vergleich zu anderen Methoden.

  • Wartbarkeit

    Listen müssen separat erstellt und deployed werden.