Verwenden der Code-Clientbibliothek für den Zugriff auf externe Daten in SharePoint

In diesem Artikel erfahren Sie, wie Sie das Clientobjektmodell in SharePoint verwenden, um mit Business Connectivity Services (BCS)-Objekten in SharePoint mithilfe von browserbasierten Skripts zu arbeiten.

In diesem Artikel wird gezeigt, wie eine externe Liste eingerichtet wird, die Daten von einer Open Data-Protokollquelle (OData) mithilfe des Clientobjektmodells in SharePoint abruft.

Erforderliche Komponenten für den Zugriff auf externe Daten mithilfe des Clientobjektmodells SharePoint

Im folgenden sind die Anforderungen für die Entwicklung von apps mithilfe des SharePoint-Clientobjektmodells:

Kernkonzepte beim Zugriff auf externe Daten mit dem SharePoint-Clientobjektmodell

Das Clientobjektmodell SharePoint bietet eine Möglichkeit zum Zugriff auf externe Daten mit clientseitigen aufrufen, die die serverseitige APIs imitieren. Funktionsweise und Verwendungsweise, finden Sie in die Artikeln in Tabelle 1.

Tabelle 1. Kernkonzepte für die Verwendung des Clientobjektmodells

Artikel Beschreibung
Ausführen grundlegender Vorgänge unter Verwendung von SharePoint-Clientbibliothekscode
Erfahren Sie, wie Sie Code führen grundlegende Vorgänge mit dem SharePoint .NET Framework-Client-Objektmodell (CSOM) schreiben.

Erstellen einer SharePoint-Add-In Zugriff auf externe Daten mithilfe des Clientobjektmodells

Die folgenden Verfahren wird gezeigt, wie ein SharePoint-Add-In einrichten und Konfigurieren einer Webseite, sodass Anforderungen mithilfe der Methoden Client und Objekte zum Abrufen von Daten aus einer externen Datenquelle.

Erstellen einer SharePoint-Add-In

  1. Öffnen Sie Visual Studio 2012.

  2. Erstellen einer App für SharePoint-Projekt.

  3. Geben Sie die Appeinstellungen, einschließlich app-Name die URL der Website für das Debuggen der app und wie Sie die app (automatisch gehostet, vom Anbieter gehosteten, SharePoint-Hosting) hosten möchten. Weitere Informationen zu Hostingoptionen finden Sie unter Auswählen von Mustern zum Entwickeln und Hosten Ihres SharePoint-Add-Ins.

  4. Klicken Sie auf Fertig stellen, um die app zu erstellen.

Um den externen Inhaltstyp zu generieren.

  1. Öffnen Sie im Projektmappen-Explorerdas Kontextmenü für das Projekt, und wählen Sie Hinzufügen und Inhaltstypen für externe Datenquelle aus.

  2. Geben Sie im Assistenten OData-Quelle angeben die URL des OData-Diensts, die Sie mit verbinden möchten. In diesem Fall verwenden Sie die Northwind-OData-Quelle auf http://www.odata.org/ecosystemveröffentlicht. Legen Sie die URL für den OData-Dienst auf fest. http://services.odata.org/Northwind/Northwind.svc/

    Geben Sie einen Namen für die Datenquelle, und klicken auf Weiter.

  3. Es wird eine Liste der Entitäten, die vom OData Service verfügbar gemacht werden angezeigt. Wählen Sie die Kunden-Entität. Stellen Sie sicher, dass das Kontrollkästchen für die ausgewählten Datenentitäten (mit Ausnahme von Dienstvorgänge) Listeninstanzen erstellen ausgewählt ist.

  4. Wählen Sie Fertig stellen aus.

Codebeispiel: Hinzufügen von Skripts und HTML auf der Seite "default.aspx"

Zu diesem Zeitpunkt müssen Sie den externen Inhaltstyp und einer externen Liste, die die Daten aus der Netflix OData-Quelle angezeigt werden.

Nächste Ziel ist es, die Seite "default.aspx" zu ändern, die Sie erstellt haben, wenn Sie Ihre app erstellt haben. Sie fügen einen Container, der die Ergebnisse der Abfrage enthalten soll, die mit Laden der Seite ausgeführt wird. Durch Ausführen des Skripts auf der Seite Load-Ereignis, stellen Sie sicher, dass das Skript ausgeführt wird, jedes Mal, wenn die Seite wird durchsucht und die resultierende Client Objektmodellaufrufe werden versucht, den Netflix-OData-Quelle Datensätze auf der Seite hinzufügen.

So fügen Sie dem Container zur Seite Default.aspx hinzu

  1. Öffnen Sie im Projektmappen-Explorer die Seite Default.aspx in der Pages-Modul abgelegte.

  2. Fügen Sie das folgende div -Element auf der Seite hinzu:

  
<div id="displayDiv"></div>
  1. Speichern Sie die Seite.

Zum Schluss fügen Sie Code auf die Datei App.js, die beim Laden der Seite ausgeführt.

So ändern Sie die Datei App.js, sodass Client ruft-Objektmodell

  1. Öffnen Sie die Datei App.js in das Modul Skripts Ihrer SharePoint-Projekts.

  2. Fügen Sie den folgenden Code am Ende der Datei.

  $(document).ready(function () {

    // Namespace
    window.AppLevelECT = window.AppLevelECT || {};

    // Constructor
    AppLevelECT.Grid = function (hostElement, surlWeb) {
        this.hostElement = hostElement;
        if (surlWeb.length > 0 &amp;&amp; surlWeb.substring(surlWeb.length - 1, surlWeb.length) != "/")
            surlWeb += "/";
        this.surlWeb = surlWeb;
    }

    // Prototype
    AppLevelECT.Grid.prototype = {

        init: function () {

            $.ajax({
                url: this.surlWeb + "_api/lists/getbytitle('Customer')/items?$select=BdcIdentity,CustomerID,ContactName",
                headers: {
                    "accept": "application/json",
                    "X-RequestDigest": $("#__REQUESTDIGEST").val()
                },
                success: this.showItems
            });
        },

        showItems: function (data) {
            var items = [];

            items.push("<table>");
            items.push('<tr><td>Customer ID</td><td>Customer Name</td></tr>');

            $.each(data.d.results, function (key, val) {
                items.push('<tr id="' + val.BdcIdentity + '"><td>' +
                    val.CustomerID + '</td><td>' +
                    val.ContactName + '</td></tr>');
            });

            items.push("</table>");

            $("#displayDiv").html(items.join(''));
        }
    }

    ExecuteOrDelayUntilScriptLoaded(getCustomers, "sp.js");
});

function getCustomers() {
    var grid = new AppLevelECT.Grid($("#displayDiv"), _spPageContextInfo.webServerRelativeUrl);
    grid.init();
}

Drücken Sie F5, um die app in SharePoint bereitstellen. Wechseln Sie zur Seite Default.aspx in der app, und eine Liste der Kunden wird auf der Seite angezeigt.

Siehe auch