Gewusst wie: Verknüpfen einer SharePoint-Liste mit dem JS Grid-Steuerelement

Letzte Änderung: Freitag, 6. Mai 2011

Gilt für: SharePoint Foundation 2010

In diesem Gewusst wie-Artikel wird das Verknüpfen eines JS Grid-Steuerelements mit einer SharePoint-Liste vorgeführt. In dieser Fortsetzung von Vorgehensweise: Erstellen eines einfachen JS-Rasters erstellen Sie eine SharePoint-Liste und ändern dann das Raster, das in Vorgehensweise: Erstellen eines einfachen JS-Rasters erstellt wurde, um die Daten aus der SharePoint-Liste zu lesen.

Eine SharePoint-Liste besteht aus Elementen (Zeilen) und Spalten (Feldern), die Daten enthalten. Die Items-Eigenschaft gibt die Sammlung der Elemente in der Liste zurück, die Fields-Eigenschaft die Sammlung der Felder in der Liste. Zur Verbesserung der Leistung sollten Sie eine der GetItem*-Methoden verwenden, um eine gefilterte Elementsammlung aus der Liste abzurufen.

Weitere Informationen zu SPList finden Sie unter SPList.

Voraussetzungen

HinweisHinweis

Sie können diese exemplarische Vorgehensweise zwar auch abschließen, ohne Visual Studio zu verwenden, es ist jedoch einfacher, wenn Sie sowohl Visual Studio 2010 als auch die SharePoint-Entwicklungstools in Visual Studio 2010 verwenden.

So füllen Sie das Raster mit Daten aus einer SharePoint-Liste auf

  1. Erstellen Sie in SharePoint Foundation 2010 eine SharePoint-Aufgabenliste.

    So erstellen Sie eine Aufgabenliste

    1. Wählen Sie im Menü Websiteaktionen die Option Weitere Optionen aus.

    2. Wählen Sie aus der Liste der Typen den Eintrag Aufgaben aus.

    3. Geben Sie der Liste den Namen TaskList.

    4. Fügen Sie der Liste vier oder fünf Datensätze hinzu.

  2. Öffnen Sie in Visual Studio die Datei GridData.c.

    GridData.c enthält Definitionen für mehrere Felder, die nicht in der TaskList-Liste enthalten sind. Entfernen Sie die folgenden Felddefinitionen:

    • Department Manager

    • Department

    • Yearly Estimate

    • FY 2009 Estimate

    • FY 2010 Estimate

    • Kontrollkästchen

    • Hyperlink

    Die verbleibende Spaltenliste sieht folgendermaßen aus.

                //Columns which map to the TaskList list.
                data.Columns.Add(new DataColumn("Key", typeof(Guid)));
                data.Columns.Add(new DataColumn(GridSerializer.DefaultGridRowStyleIdColumnName, typeof(String)));
                data.Columns.Add(new DataColumn("HierarchyParentKey", typeof(Guid)));
                data.Columns.Add(new DataColumn("Title", typeof(string)));
                data.Columns.Add(new DataColumn("Start Date", typeof(DateTime)));
                data.Columns.Add(new DataColumn("Due Date", typeof(DateTime)));
                data.Columns.Add(new DataColumn("Complete Through", typeof(string)));
    
  3. Ersetzen Sie den Code zum Zuweisen von Werten zu den Rasterfeldern durch folgenden Code.

    // Populate the grid with data from the list.
    // For the sake of simplicity, this sample requests all records from the task list.
    // In the real world, request only the data you really need.
                // Replace SPSite("https://server/site") with your server
                // and site information.
    using (SPSite mySite = new SPSite("https://server/site"))
    {
        using (SPWeb myWeb = mySite.OpenWeb())
        {
    
            SPList taskList = myWeb.Lists["TaskList"];
            DataRow dr;
    
            foreach (SPListItem task in taskList.Items)
            { 
                dr = data.NewRow();
    
                dr["Key"] = task.UniqueId;
                dr["Title"] = task["Title"].ToString(); 
                dr["Start Date"] = task["Start Date"]; 
                dr["Due Date"] = task["Due Date"];
                dr["Complete Through"] = task["% Complete"]; 
    
                data.Rows.Add(dr);
            }
    
        }
    }
    
    HinweisHinweis

    Achten Sie darauf, SPSite("https://server/site"), durch die Informationen für Ihren Server und Ihre Website zu ersetzen.

  4. Drücken Sie in Visual Studio F5, um das Projekt auszuführen.

    Die Daten aus der TaskList-Liste sollten nun im Webpart sichtbar sein.

Siehe auch

Referenz

SPList