Condividi tramite


Creazione del servizio dati (Guida rapida di WCF Data Services)

In questa attività verrà creato un servizio dati di esempio che espone un feed OData (Open Data Protocol) basato sul database Northwind di esempio. L'attività comporta i passaggi principali seguenti:

  1. Creazione di un'applicazione Web ASP.NET.

  2. Definizione del modello di dati tramite gli strumenti di Entity Data Model.

  3. Aggiunta del servizio dati all'applicazione Web.

  4. Abilitazione dell'accesso al servizio dati.

Dd728275.note(it-it,VS.100).gifNota:
L'applicazione Web ASP.NET creata al completamento di questa attività viene eseguita sul server di sviluppo ASP.NET fornito da Visual Studio.Per semplificare il test del servizio dati e la risoluzione dei problemi relativi durante lo sviluppo, eseguire l'applicazione che ospita il servizio dati tramite Internet Information Services (IIS).Per ulteriori informazioni, vedere Procedura: sviluppare un servizio WCF in esecuzione in IIS.

Per creare l'applicazione Web ASP.NET

  1. In Visual Studio scegliere Nuovo dal menu File, quindi selezionare Progetto.

  2. Nella finestra di dialogo Nuovo progetto selezionare Visual Basic o Visual C# come linguaggio di programmazione.

  3. Nel riquadro Modelli selezionare Applicazione Web ASP.NET. Nota: se si utilizza Visual Studio Web Developer, sarà necessario creare un nuovo sito Web anziché una nuova applicazione Web.

  4. Digitare NorthwindService come nome del progetto.

  5. Fare clic su OK.

  6. (Opzione facoltativa) Specificare un numero specifico di porta per l'applicazione Web. Nota: nella parte restante della guida rapida viene utilizzato il numero di porta 12345.

    1. In Esplora soluzioni fare clic con il pulsante destro del mouse sul nome del progetto ASP.NET appena creato, quindi scegliere Proprietà.

    2. Selezionare la scheda Web e impostare il valore della casella di testo Porta specifica su 12345.

Per definire il modello di dati

  1. In Esplora soluzioni fare clic con il pulsante destro del mouse sul nome del progetto ASP.NET, quindi scegliere Aggiungi nuovo elemento.

  2. Nella finestra di dialogo Aggiungi nuovo elemento selezionare ADO.NET Entity Data Model.

  3. Digitare Northwind.edmx come nome del modello di dati.

  4. Nella Procedura guidata Entity Data Model selezionare Genera da database, quindi fare clic su Avanti.

  5. Connettere il modello di dati al database effettuando uno dei passaggi seguenti, quindi fare clic su Avanti:

    • Se non si dispone di una connessione al database già configurata, fare clic su Nuova connessione e creare una nuova connessione. Per ulteriori informazioni, vedere Procedura: creare connessioni a database di SQL Server. A questa istanza di SQL Server deve essere collegato il database Northwind di esempio.

      - oppure -

    • Se si dispone di una connessione al database già configurata per connettersi al database Northwind, selezionarla nell'elenco delle connessioni.

  6. Nella pagina finale della procedura guidata selezionare le caselle di controllo relative a tutte le tabelle nel database e deselezionare le caselle di controllo relative a visualizzazioni e stored procedure.

  7. Fare clic su Fine per chiudere la procedura guidata.

    Dd728275.note(it-it,VS.100).gifNota:
    Questo modello di dati generato espone le proprietà della chiave esterna sui tipi di entità.I modelli di dati creati utilizzando Visual Studio 2008 non includono tali proprietà della chiave esterna.Per questo motivo è necessario aggiornare le classi del servizio dati client di qualsiasi applicazione client creata per accedere al servizio dati Northwind creato utilizzando Visual Studio 2008 prima di tentare di accedere alla versione corrente del servizio dati Northwind.

Per creare il servizio dati

  1. In Esplora soluzioni fare clic con il pulsante destro del mouse sul nome del progetto ASP.NET, quindi scegliere Aggiungi nuovo elemento.

  2. Nella finestra di dialogo Aggiungi nuovo elemento selezionare ADO.NET Data Services.

  3. Digitare Northwind come nome del servizio.

    In Visual Studio verranno creati i file del markup XML e del codice per il nuovo servizio. La finestra dell'editor del codice viene visualizzata per impostazione predefinita. In Esplora soluzioni il servizio risulterà denominato Northwind con estensione svc.cs o svc.vb.

  4. Nel codice per il servizio dati sostituire il commento /* TODO: put your data source class name here */ nella definizione della classe che definisce il servizio dati con il tipo del contenitore di entità del modello di dati, che in questo caso corrisponde a NorthwindEntities. La definizione di classe dovrà essere analoga alla seguente:

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

Per abilitare l'accesso alle risorse del servizio dati

  1. Nel codice per il servizio dati sostituire il codice segnaposto nella funzione InitializeService con il codice seguente:

    ' 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);
    

    In questo modo i client autorizzati saranno in grado di accedere in lettura e scrittura alle risorse per i set di entità specificati.

    Dd728275.note(it-it,VS.100).gifNota:
    I client che possono accedere all'applicazione ASP.NET saranno inoltre in grado di accedere alle risorse esposte dal servizio dati.Per impedire l'accesso non autorizzato alle risorse in un servizio dati di produzione, è inoltre necessario proteggere l'applicazione stessa.Per ulteriori informazioni, vedere Securing ASP.NET Web Sites.

Passaggi successivi

La creazione di un nuovo servizio dati che espone un feed OData basato sul database Northwind di esempio è stata completata ed è stato abilitato l'accesso al feed per i client che dispongono delle autorizzazioni necessarie nell'applicazione Web ASP.NET. A questo punto, si avvierà il servizio dati da Visual Studio e si accederà al feed OData inviando richieste GET HTTP attraverso un browser:

Accesso al servizio da un browser

Vedere anche

Altre risorse

ADO.NET Entity Data Model Tools