Condividi tramite


Procedura dettagliata: creazione di un elenco esterno in SharePoint tramite il servizio di integrazione applicativa dei dati

Il servizio di integrazione applicativa dei dati consente a SharePoint di visualizzare dati business da applicazioni server back-end, servizi Web e database.

In questa procedura dettagliata viene illustrato come creare un modello per il servizio di integrazione applicativa dei dati che restituisce informazioni sui contatti in un database di esempio.Verrà quindi creato un elenco esterno in SharePoint tramite questo modello.

In questa procedura dettagliata vengono illustrate le attività seguenti:

  • Creazione di un progetto.

  • Aggiunta di un'entità al modello.

  • Aggiunta di un metodo Finder.

  • Aggiunta di un metodo Finder specifico.

  • Test del progetto.

Prerequisiti

Per completare la procedura dettagliata, è necessario disporre dei componenti seguenti:

Creazione di un progetto contenente un modello BDC

Per creare un progetto contenente un modello BDC

  1. Sulla barra dei menu di Visual Studio, scegliere File, Nuovo, Project.

    Verrà visualizzata la finestra di dialogo Nuovo progetto.

  2. In Visual C# o Visual Basic, espandere il nodo SharePoint quindi selezionare l'elemento 2010.

  3. Nel riquadro Modelli, scegliere Progetto SharePoint 2010, denominare il progetto AdventureWorksTest quindi scegliere il pulsante OK.

    Viene visualizzata la Personalizzazione guidata SharePoint.Nella procedura guidata, è possibile specificare il sito che verrà utilizzato per eseguire il debug del progetto e per impostare il livello di attendibilità della soluzione.

  4. Scegliere il pulsante di opzione Distribuisci come soluzione farm per impostare il livello di attendibilità.

  5. Scegliere il pulsante Fine per accettare il sito di SharePoint locale predefinito.

  6. In Esplora soluzioni, selezionare il nodo del progetto SharePoint.

  7. Sulla barra dei menu, scegliere Progetto, Aggiungi nuovo elemento.

    Viene aperta la finestra di dialogo Aggiungi nuovo elemento.

  8. Nel riquadro Modelli, scegliere Modello di integrazione applicativa dei dati (solo soluzioni farm), denominare il progetto AdventureWorksContacts quindi scegliere il pulsante Aggiungi.

Aggiunta al progetto di classi di accesso ai dati

Per aggiungere al progetto classi di accesso ai dati

  1. Sulla barra dei menu, scegliere Strumenti, Connetti a Database.

    Verrà visualizzata la finestra di dialogo Aggiungi connessione.

  2. Aggiungere una connessione al database di esempio AdventureWorks di SQL Server.

    Per ulteriori informazioni, vedere Aggiungi/Modifica connessione (Microsoft SQL Server).

  3. In Esplora soluzioni, selezionare il nodo del progetto.

  4. Sulla barra dei menu, scegliere Progetto, Aggiungi nuovo elemento.

  5. Nel riquadro Modelli installati, selezionare il nodo Dati.

  6. Nel riquadro Modelli, scegliere Classi LINQ to SQL.

  7. Nella casella Nome, specificare AdventureWorks e quindi scegliere il pulsante Aggiungi.

    Un file dbml viene aggiunto al progetto e Progettazione relazionale oggetti) viene aperto.

  8. Sulla barra dei menu, scegliere Visualizza, Esplora server.

  9. In Esplora server espandere il nodo che rappresenta il database di esempio AdventureWorks, quindi espandere il nodo Tables.

  10. Aggiungere la tabella Contatto in Progettazione relazionale oggetti.

    Viene creata una classe di entità, che verrà visualizzata nell'area di progettazione.La classe di entità include proprietà che eseguono il mapping alle colonne nella tabella Contact (Person).

Rimozione dell'entità predefinita dal modello di integrazione applicativa dei dati

Il progetto Modello di integrazione applicativa dei dati aggiunge al modello un'entità predefinita denominata Entity1.Rimuovere questa entità.In un secondo momento, si aggiungerà una nuova entità.L'avvio con un modello vuoto riduce il numero di passaggi richiesto per completare la procedura dettagliata.

Per rimuovere l'entità predefinita dal modello

  1. In Esplora soluzioni, espandere il nodo BdcModel1 quindi aprire il file di BdcModel1.bdcm.

  2. Il file del modello di integrazione applicativa dei dati verrà aperto nella finestra di progettazione dell'integrazione applicativa dei dati.

  3. Nella finestra di progettazione, aprire il menu di scelta rapida per Entity1quindi scegliere Elimina.

  4. In Esplora soluzioni, scegliere dal menu di scelta rapida per Entity1.vb (in Visual Basic) o su Entity1.cs (in c) e quindi scegliere Elimina.

  5. Aprire il menu di scelta rapida per Entity1Service.vb (in Visual Basic) o su Entity1Service.cs (in c) e quindi scegliere Elimina.

Aggiunta di un'entità al modello

Aggiungere un'entità al modello.È possibile aggiungere entità da Visual Studio Casella degli strumenti nella finestra di progettazione di integrazione applicativa dei dati.

Per aggiungere un'entità al modello

  1. Sulla barra dei menu, scegliere Visualizza, Casella degli strumenti.

  2. Nella scheda BusinessDataConnectivityCasella degli strumenti, aggiungere Entità nella finestra di progettazione di integrazione applicativa dei dati.

    La nuova entità verrà visualizzata nella finestra di progettazione.In Visual Studio viene aggiunto un file denominato EntityService.vb (in Visual Basic) o EntityService.cs (in c) al progetto.

  3. Sulla barra dei menu, scegliere Visualizza, Proprietà, Finestra.

  4. Nella finestra Proprietà, impostare il valore della proprietà Nome per collegarsi.

  5. Nella finestra di progettazione, aprire il menu di scelta rapida per l'entità, scegliere Aggiungiquindi scegliere Identificatore.

    Il nuovo identificatore verrà visualizzato nell'entità.

  6. Nella finestra Proprietà modificare il nome dell'identificatore in ContactID.

  7. Nell'elenco Nome tipo, scegliere System.Int32.

Aggiunta di un metodo Finder specifico

Per consentire al servizio di integrazione applicativa dei dati di visualizzare un contatto specifico, è necessario aggiungere un metodo Finder specifico.Le chiamate al servizio BDC il metodo Finder specifico quando un utente seleziona un elemento in un elenco e quindi selezionare il pulsante Visualizza elemento della barra multifunzione.

Aggiungere un metodo Finder specifico all'entità Contact tramite la finestra Dettagli metodo di integrazione applicativa dei dati.Per restituire un'entità specifica, aggiungere codice al metodo.

Per aggiungere un metodo Finder specifico

  1. Nella finestra di progettazione di integrazione applicativa dei dati, selezionare l'entità Contatto.

  2. Sulla barra dei menu, scegliere Visualizza, Altre finestre, Dettagli metodo di integrazione applicativa dei dati.

    La finestra dettagli metodo di integrazione applicativa dei dati viene aperto.

  3. Nell'elenco Aggiungi metodo, scegliere Crea metodo Finder specifico.

    In Visual Studio vengono aggiunti gli elementi seguenti al modello.Questi elementi vengono visualizzati nella finestra Dettagli metodo di integrazione applicativa dei dati.

    • Metodo denominato Readitem.

    • Parametro di input per il metodo.

    • Parametro restituito per il metodo.

    • Descrittore di tipo per ogni parametro.

    • Istanza di metodo per il metodo.

  4. Nella finestra Dettagli metodo di integrazione applicativa dei dati, aprire l'elenco visualizzato per il descrittore di tipo Contatto quindi scegliere Modifica.

    Esplora integrazione applicativa dei dati verrà aperto e fornisce una visualizzazione gerarchica del modello.

  5. Nella finestra Proprietà, aprire l'elenco accanto alla proprietà TypeName, scegliere la scheda Progetto corrente quindi scegliere la proprietà Contatto.

  6. In Esplora integrazione applicativa dei dati, aprire il menu di scelta rapida Contattoquindi scegliere Aggiungi descrittore tipo.

    Un nuovo descrittore di tipo denominato TypeDescriptor1 visualizzato in Esplora integrazione applicativa dei dati.

  7. Nella finestra Proprietà, impostare il valore della proprietà Nome a ContactID.

  8. Aprire l'elenco accanto alla proprietà TypeName quindi scegliere Int32.

  9. Aprire l'elenco accanto alla proprietà Identificatore quindi scegliere ContactID.

  10. Ripetere il passaggio 6 per creare un descrittore di tipo per ognuno dei campi riportati di seguito.

    Nome

    Nome tipo

    FirstName

    System.String

    LastName

    System.String

    Phone

    System.String

    EmailAddress

    System.String

    EmailPromotion

    System.Int32

    NameStyle

    System.Boolean

    PasswordHash

    System.String

    PasswordSalt

    System.String

  11. Nella finestra di progettazione di integrazione applicativa dei dati, nell'entità Contatto, aprire il metodo ReadItem.

    Il file di codice servizio di Contact verrà aperto nell'editor di codice.

  12. Nella classe ContactService sostituire il metodo ReadItem con il codice riportato di seguito.Mediante il codice vengono effettuate le seguenti attività:

    • Recupero di un record dalla tabella Contact del database AdventureWorks.

    • Restituzione di un'entità Contact al servizio di integrazione applicativa dei dati.

    [!NOTA]

    Sostituire il valore del campo ServerName con il nome del server locale.

    Public Shared Function ReadItem(ByVal contactID As Integer) As Contact
        Const ServerName As String = "MySQLServerName"
        Dim dataContext As AdventureWorksDataContext = _
            New AdventureWorksDataContext("Data Source=" & ServerName & _
                ";Initial Catalog=AdventureWorks;Integrated Security=True")
    
        Dim Contact As Contact = _
            (From TempContacts In dataContext.Contacts.AsEnumerable().Take(20) _
            Where TempContacts.ContactID = contactID _
            Select TempContacts).[Single]()
        Return Contact
    End Function
    
    public static Contact ReadItem(int contactID)
    {
        const string ServerName = "MySQLServerName";
        AdventureWorksDataContext dataContext = new AdventureWorksDataContext
              ("Data Source=" + ServerName + ";" +
               "Initial Catalog=AdventureWorks;Integrated Security=True");
    
        Contact Contact =
            (from contacts in dataContext.Contacts.AsEnumerable().Take(20)
             where contacts.ContactID == contactID
             select contacts).Single();
        return Contact;
    }
    

Aggiunta di un metodo Finder

Per consentire al servizio di integrazione applicativa dei dati di visualizzare i contatti in un elenco, è necessario aggiungere un metodo Finder.Aggiungere un metodo Finder all'entità Contact tramite la finestra Dettagli metodo di integrazione applicativa dei dati.Per restituire una raccolta di entità al servizio di integrazione applicativa dei dati, aggiungere codice al metodo.

Per aggiungere un metodo Finder

  1. Nella finestra di progettazione di integrazione applicativa dei dati, selezionare l'entità Contatto.

  2. Nella finestra Dettagli metodo di integrazione applicativa dei dati, comprimere il nodo ReadItem.

  3. Nell'elenco Aggiungi metodo nel metodo ReadList, scegliere Crea metodo Finder.

    In Visual Studio verranno aggiunti automaticamente un metodo, un parametro restituito e un descrittore di tipo.

  4. Nella finestra di progettazione di integrazione applicativa dei dati, nell'entità Contatto, aprire il metodo ReadList.

    Il file di codice per il servizio di contact verrà aperto nell'editor di codice.

  5. Nella classe ContactService sostituire il metodo ReadList con il codice riportato di seguito.Mediante il codice vengono effettuate le seguenti attività:

    • Recupero dei dati dalla tabella Contacts del database AdventureWorks.

    • Restituzione di un elenco di entità Contact al servizio di integrazione applicativa dei dati.

    [!NOTA]

    Sostituire il valore del campo ServerName con il nome del server locale.

    Public Shared Function ReadList() As IEnumerable(Of Contact)
        Const ServerName As String = "MySQLServerName"
        Dim dataContext As AdventureWorksDataContext = _
            New AdventureWorksDataContext("Data Source=" & ServerName & _
                ";Initial Catalog=AdventureWorks;Integrated Security=True")
    
        Dim Contacts As IEnumerable(Of Contact) = _
            From TempContacts In dataContext.Contacts.Take(20) _
                  Select TempContacts
        Return Contacts
    End Function
    
    public static IEnumerable<Contact> ReadList()
    {
        const string ServerName = "MySQLServerName";
        AdventureWorksDataContext dataContext = new AdventureWorksDataContext
              ("Data Source=" + ServerName + ";" +
               "Initial Catalog=AdventureWorks;Integrated Security=True");
    
        IEnumerable<Contact> Contacts =
            from contacts in dataContext.Contacts.Take(20)
            select contacts;
        return Contacts;
    
    }
    

Verifica del progetto

Quando si esegue il progetto, viene aperto il sito di SharePoint e in Visual Studio viene aggiunto il modello al servizio di integrazione applicativa dei dati.Creare un elenco esterno in SharePoint che faccia riferimento all'entità Contact.I dati per i contatti nel database AdventureWorks vengono visualizzati nell'elenco.

[!NOTA]

Può essere necessario modificare le impostazioni di sicurezza in SharePoint prima di eseguire il debug della soluzione.Per ulteriori informazioni, vedere Progettazione di un modello di integrazione applicativa dei dati.

Per verificare il progetto

  1. Scegliere la chiave F5.

    Verrà aperto il sito di SharePoint.

  2. Scegliere dal menu Azioni sito, scegliere il comando Altre opzioni.

  3. Nella pagina Crea, scegliere il modello Elenco esterno e quindi scegliere il pulsante Crea.

  4. Assegnare il nome Contatti all'elenco personalizzato.

  5. Scegliere il pulsante sfoglia accanto al campo Tipo di contenuto esterno.

  6. Nella finestra di dialogo Selezione tipo di contenuto esterno, selezionare l'elemento AdventureWorksContacts.BdcModel1.Contact quindi scegliere il pulsante Crea.

    In SharePoint viene creato un elenco esterno che contiene i contatti del database di esempio AdventureWorks.

  7. Per testare il metodo Finder specifico, scegliere un contatto nell'elenco.

  8. Sulla barra multifunzione, scegliere la scheda Elementi quindi scegliere il comando Visualizza elemento.

    I dettagli del contatto selezionato vengono visualizzati in un form.

Passaggi successivi

Per ulteriori informazioni sulla progettazione di modelli per il servizio di integrazione applicativa dei dati in SharePoint, vedere i seguenti argomenti:

Vedere anche

Concetti

Panoramica degli strumenti di progettazione del modello di integrazione applicativa dei dati

Altre risorse

Progettazione di un modello di integrazione applicativa dei dati

Creazione di un modello di integrazione applicativa dei dati

Integrazione di dati business in SharePoint