Verwenden der Code-Clientbibliothek für den Zugriff auf externe Daten in SharePointUse the client code library to access external data 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.Learn how to use the SharePoint client object model to work with Business Connectivity Services (BCS) objects in SharePoint using browser-based scripting.

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.This article demonstrates how to set up an external list that retrieves data from an Open Data protocol (OData) source using the client object model in SharePoint.

Erforderliche Komponenten für den Zugriff auf externe Daten mithilfe des Clientobjektmodells SharePointPrerequisites for accessing external data using the SharePoint client object model

Im folgenden sind die Anforderungen für die Entwicklung von apps mithilfe des SharePoint-Clientobjektmodells:The following are requirements for being able to develop apps using the SharePoint client object model:

Kernkonzepte beim Zugriff auf externe Daten mit dem SharePoint-ClientobjektmodellCore concepts to know when accessing external data with the SharePoint client object model

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.The SharePoint client object model provides a way to access external data using client-side calls that mimic the server-side APIs. To understand how it works and how to use it, see the articles in Table 1.

In Tabelle 1. Kernkonzepte für die Verwendung des ClientobjektmodellsTable 1. Core concepts for using the client object model

ArtikelArticle BeschreibungDescription
Ausführen grundlegender Vorgänge unter Verwendung von SharePoint-ClientbibliothekscodeComplete basic operations using SharePoint client library code
Erfahren Sie, wie Sie Code führen grundlegende Vorgänge mit dem SharePoint .NET Framework-Client-Objektmodell (CSOM) schreiben.Learn how to write code to peform basic operations with the SharePoint .NET Framework client object model (CSOM).

Erstellen einer SharePoint-Add-In Zugriff auf externe Daten mithilfe des ClientobjektmodellsCreate an SharePoint Add-in to access external data using the client object model

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.The following procedures show how to set up an SharePoint Add-in and configure a webpage to make requests using client object model methods and objects to retrieve data from an external data source.

Erstellen einer SharePoint-Add-InTo create an SharePoint Add-in

  1. Öffnen Sie Visual Studio 2012.Open Visual Studio 2012.

  2. Erstellen einer App für SharePoint-Projekt.Create an App for SharePoint project.

  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 für die Entwicklung und das Hosting Ihres Add-Ins für SharePoint.Specify the app settings, including app name, the site URL for debugging the app, and how you want to host the app (Autohosted, Provider-hosted, SharePoint-hosted). For more information about hosting options, see Choose patterns for developing and hosting your SharePoint Add-in.

  4. Klicken Sie auf Fertig stellen, um die app zu erstellen.Click Finish to create the app.

Um den externen Inhaltstyp zu generieren.To generate the external content type

  1. Öffnen Sie im Projektmappen-Explorerdas Kontextmenü für das Projekt, und wählen Sie Hinzufügen und Inhaltstypen für externe Datenquelle aus.In Solution Explorer, open the shortcut menu for the project, and choose Add, Content types for External Data source.

  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 http://services.odata.org/Northwind/Northwind.svc/In the Specify OData Source wizard, enter the URL of the OData service that you want to connect to. In this case, you will use the Northwind OData source published at http://www.odata.org/ecosystem. Set the URL for the OData service to http://services.odata.org/Northwind/Northwind.svc/

    Geben Sie einen Namen für die Datenquelle, und klicken auf Weiter.Specify a name for the data source, and choose Next.

  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.A list of entities that are exposed by the OData Service will appear. Choose the Customers entity. Ensure that the Create list instances for the selected data entities (except Service Operations) check box is selected.

  4. Wählen Sie Fertig stellen aus.Choose Finish.

Codebeispiel: Hinzufügen von Skripts und HTML auf der Seite "default.aspx"Code example: Add scripts and HTML to the Default.aspx page

Zu diesem Zeitpunkt müssen Sie den externen Inhaltstyp und einer externen Liste, die die Daten aus der Netflix OData-Quelle angezeigt werden.At this point, you have the external content type and an external list that displays the data from the Netflix OData source.

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.The next objective is to modify the default.aspx page that you created when you created your app. You add a container that will hold the results of the query that is executed with the page loads. By executing the scripts on the page load event, you ensure that the script will be executed every time the page is browsed, and the resulting client object model calls will be made to the Netflix OData source to add records to the page.

So fügen Sie dem Container zur Seite Default.aspx hinzuTo add the container to the Default.aspx page

  1. Öffnen Sie im Projektmappen-Explorer die Seite Default.aspx in der Pages-Modul abgelegte.In Solution Explorer, open the Default.aspx page located in the Pages module.

  2. Fügen Sie das folgende div -Element auf der Seite hinzu:Add the following div element to the page:

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

Zum Schluss fügen Sie Code auf die Datei App.js, die beim Laden der Seite ausgeführt.Finally, you add code to the App.js file that executes when the page loads.

So ändern Sie die Datei App.js, sodass Client ruft-ObjektmodellTo modify the App.js file to make client object model calls

  1. Öffnen Sie die Datei App.js in das Modul Skripts Ihrer SharePoint-Projekts.Open the App.js file in the Scripts module of your SharePoint project.

  2. Fügen Sie den folgenden Code am Ende der Datei.Paste the following code at the end of the file.

  $(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.Press F5 to deploy the app to SharePoint. Browse to the Default.aspx page in the app, and a list of customers appears on the page.

Siehe auchSee also