Erstellen des Datendiensts (WCF Data Services-Schnellstart)

In dieser Aufgabe erstellen Sie einen Beispieldatendienst, der einen auf der Northwind-Beispieldatenbank basierenden Open Data Protocol (OData) -Feed verfügbar macht. Die Aufgabe umfasst die folgenden grundlegenden Schritte:

  1. Erstellen Sie eine ASP.NET-Webanwendung.

  2. Definieren Sie das Datenmodell mit den Entity Data Model-Tools.

  3. Fügen Sie den Datendienst der Webanwendung hinzu.

  4. Aktivieren Sie den Zugriff auf den Datendienst.

Dd728275.note(de-de,VS.100).gifHinweis:
Die beim Durchführen dieser Aufgabe erstellte ASP.NET-Webanwendung wird auf dem von Visual Studio bereitgestellten ASP.NET Development Server ausgeführt.Um das Testen und die Problembehebung des Datendiensts während der Entwicklung zu vereinfachen, sollte die Anwendung, die den Datendienst hostet, möglicherweise mithilfe von IIS ausgeführt werden.Weitere Informationen finden Sie unter Gewusst wie: Entwickeln eines WCF-Datendiensts, der auf IIS ausgeführt wird.

So erstellen Sie die ASP.NET-Webanwendung

  1. Wählen Sie in Visual Studio im Menü Datei die Option Neu aus, und wählen Sie dann Projekt aus.

  2. Wählen Sie im Dialogfeld Neues Projekt entweder Visual Basic oder Visual C# als Programmiersprache aus.

  3. Wählen Sie im Bereich Vorlagen die Option ASP.NET-Webanwendung aus. Hinweis: Wenn Sie Visual Studio Web Developer verwenden, müssen Sie anstelle einer neuen Webanwendung eine neue Website erstellen.

  4. Geben Sie NorthwindService als Namen des Projekts ein.

  5. Klicken Sie auf OK.

  6. (Optional) Geben Sie eine bestimmte Portnummer für die Webanwendung an. Hinweis: Im weiteren Verlauf des Schnellstarts wird die Portnummer 12345 verwendet.

    1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Namen des von Ihnen erstellten ASP.NET-Projekts, und klicken Sie dann auf Eigenschaften.

    2. Wählen Sie die Registerkarte Web aus, und legen Sie den Wert des Textfelds Bestimmter Anschluss auf 12345 fest.

So definieren Sie das Datenmodell

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Namen des ASP.NET-Projekts, und klicken Sie dann auf Neues Element hinzufügen.

  2. Wählen Sie im Dialogfeld Neues Element hinzufügen die Option ADO.NET Entity Data Model aus.

  3. Geben Sie als Name des Datenmodells Northwind.edmx ein.

  4. Wählen Sie im Assistent für Entity Data Model die Option Aus Datenbank generieren aus, und klicken Sie auf Weiter.

  5. Verbinden Sie das Datenmodell mit der Datenbank, indem Sie einen der folgenden Schritte ausführen, und klicken Sie dann auf Weiter:

    • Wenn noch keine Datenbankverbindung konfiguriert wurde, klicken Sie auf Neue Verbindung, um eine neue Verbindung zu erstellen. Weitere Informationen finden Sie unter Gewusst wie: Erstellen von Verbindungen mit SQL Server-Datenbanken. Dieser SQL Server-Instanz muss die Northwind-Beispieldatenbank angefügt worden sein.

      - oder -

    • Wenn bereits eine Datenbankverbindung für die Northwind-Datenbank konfiguriert wurde, wählen Sie diese Verbindung in der Liste der Verbindungen aus.

  6. Aktivieren Sie auf der letzten Seite des Assistenten die Kontrollkästchen für alle Tabellen in der Datenbank, und deaktivieren Sie die Kontrollkästchen für Sichten und gespeicherte Prozeduren.

  7. Klicken Sie auf Fertig stellen, um den Assistenten zu schließen.

    Dd728275.note(de-de,VS.100).gifHinweis:
    Das erstellte Datenmodell macht Fremdschlüsseleigenschaften von Entitätstypen verfügbar.Mit Visual Studio 2008 erstellte Datenmodelle enthalten diese Fremdschlüsseleigenschaften nicht.Aus diesem Grund müssen Sie die Clientdatendienstklassen jeglicher Clientanwendungen aktualisieren, die für den Zugriff auf den mit Visual Studio 2008 erstellten Northwind-Datendienst erstellt wurden, bevor Sie auf diese Version des Northwind-Datendiensts zugreifen.

So erstellen Sie den Datendienst

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Namen des ASP.NET-Projekts, und klicken Sie dann auf Neues Element hinzufügen.

  2. Wählen Sie im Dialogfeld Neues Element hinzufügen die Option ADO.NET Data Service aus.

  3. Geben Sie als Name des Diensts Northwind ein.

    Visual Studio erstellt das XML-Markup und die Codedateien für den neuen Dienst. In der Standardeinstellung wird das Fenster des Code-Editors geöffnet. Im Projektmappen-Explorer wird der Dienst mit dem Namen "Northwind" und der Erweiterung ".svc.cs" oder ".svc.vb" angezeigt.

  4. Ersetzen Sie im Code für den Datendienst den Kommentar /* TODO: put your data source class name here */ in der Definition der Klasse, die den Datendienst definiert, durch den Typ, der der Entitätscontainer des Datenmodells ist, in diesem Fall NorthwindEntities. Die Klassendefinition sollte wie folgt aussehen:

    Public Class Northwind
        Inherits DataService(Of NorthwindEntities)
    
    public class Northwind : DataService<NorthwindEntities>
    

So aktivieren Sie den Zugriff auf Datendienstressourcen

  1. Ersetzen Sie im Code für den Datendienst den Platzhaltercode in der InitializeService-Funktion durch Folgendes:

    ' Grant only the rights needed to support the client application.
    config.SetEntitySetAccessRule("Orders", EntitySetRights.AllRead _
         Or EntitySetRights.WriteMerge _
         Or EntitySetRights.WriteReplace)
    config.SetEntitySetAccessRule("Order_Details", EntitySetRights.AllRead _
        Or EntitySetRights.AllWrite)
    config.SetEntitySetAccessRule("Customers", EntitySetRights.AllRead)
    
     // Grant only the rights needed to support the client application.
    config.SetEntitySetAccessRule("Orders", EntitySetRights.AllRead 
         | EntitySetRights.WriteMerge 
         | EntitySetRights.WriteReplace );
     config.SetEntitySetAccessRule("Order_Details", EntitySetRights.AllRead
         | EntitySetRights.AllWrite);
     config.SetEntitySetAccessRule("Customers", EntitySetRights.AllRead);
    

    So können autorisierte Clients, Lese- und Schreibzugriff auf Ressourcen für die angegebenen Entitätenmengen erhalten.

    Dd728275.note(de-de,VS.100).gifHinweis:
    Jeder Client, der auf die ASP.NET-Anwendung zugreifen kann, kann auch auf die vom Datendienst verfügbar gemachten Ressourcen zugreifen.Sie sollten in einem Produktionsdatendienst auch die Anwendung selbst sichern, um nicht autorisierten Zugriff auf Ressourcen zu verhindern.Weitere Informationen finden Sie unter Securing ASP.NET Web Sites.

Nächste Schritte

Sie haben erfolgreich einen neuen Datendienst erstellt, der einen auf der Northwind-Beispieldatenbank basierenden OData -Feed verfügbar macht. Sie haben außerdem den Zugriff auf den Feed für Clients aktiviert, die über Berechtigungen für die ASP.NET-Webanwendung verfügen. Als Nächstes starten Sie den Datendienst aus Visual Studio und greifen auf den OData -Feed zu, indem Sie HTTP GET-Anforderungen über einen Webbrowser an die verfügbar gemachten Ressourcen senden:

Zugreifen auf den Dienst über einen Webbrowser

Siehe auch

Weitere Ressourcen

ADO.NET Entity Data Model Tools