Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Procedura dettagliata: creazione di una Web part Silverlight che visualizza il servizio OData per SharePoint

 

SharePoint 2010 espone i dati dell'elenco mediante OData. In SharePoint, il servizio di OData viene implementato dal servizio RESTful ListData.svc. Questa procedura dettagliata mostra come creare un web part SharePoint che ospita un'applicazione Silverlight. L'applicazione Silverlight mostra le informazioni riguardanti un elenco di annunci SharePoint utilizzando ListData.svc. Per ulteriori informazioni, vedere Interfaccia REST di SharePoint Foundation ed Aprire il protocollo di dati.

In questa procedura dettagliata vengono illustrate le attività seguenti:

System_CAPS_noteNota

Nomi o percorsi visualizzati per alcuni elementi dell'interfaccia utente di Visual Studio nelle istruzioni seguenti potrebbero essere diversi nel computer in uso. La versione di Visual Studio in uso e le impostazioni configurate determinano questi elementi. Per altre informazioni, vedere Personalizzazione dell'IDE di Visual Studio.

Prerequisiti

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

Innanzitutto, creare un'applicazione Silverlight in Visual Studio. L'applicazione Silverlight recupera i dati dall'elenco di annunci SharePoint utilizzando il servizio ListData.svc.

System_CAPS_noteNota

Nessun versione di Silverlight 4.0 supporta le interfacce richieste per far riferimento ai dati di elenchi SharePoint.

Per creare un'applicazione Silverlight e una web part di Silverlight.

  1. Nella barra dei menu scegliere File, Nuovo, Progetto per visualizzare la finestra di dialogo Nuovo progetto.

  2. Espandere il nodo SharePoint sotto Visual C# o Visual Basic, quindi scegliere il nodo 2010.

  3. Nel riquadro Modelli, selezionare il modello SharePoint 2010 Silverlight Web Part.

  4. Nella casella di testo Nome, inserire SLWebPartTest e selezionare il pulsante OK.

    Viene visualizzata la finestra di dialogo Personalizzazione guidata SharePoint.

  5. Nella pagina Specificare il sito e il livello di sicurezza per il debug immettere l'URL per il server del sito SharePoint in cui si desidera eseguire il debug della definizione del sito o utilizzare il percorso predefinito (http://system name/).

  6. Nella sezione Selezionare il livello di attendibilità per la soluzione SharePoint scegliere il pulsante di opzione Distribuisci come soluzione farm.

    Anche se in questo esempio viene utilizzata una soluzione farm, i progetti web part di Silverlight possono essere distribuiti sia come farm o mediate la creazione di soluzioni di sandbox. Per ulteriori informazioni sulle differenze tra le soluzioni create mediante sandbox e quelle farm, vedere Considerazioni sulle soluzioni create mediante sandbox.

  7. Nella sezione Come si desidera associare la Web part Silverlight della pagina Specifica informazioni di configurazione Silverlight, scegliere il pulsante di opzione Crea nuovo progetto Silverlight e associalo alla web part.

  8. Modificare Nome in SLApplication, impostare Linguaggio su Visual Basic o Visual C#, quindi impostare Versione di Silverlight su Silverlight 4.0.

  9. Fare clic sul pulsante Fine. Il progetto viene visualizzato in Esplora soluzioni.

    La soluzione contiene due progetti: un'applicazione Silverlight e una web part di Silverlight. L'applicazione Silverlight recuperare e visualizza l'elenco dei dati da SharePoint e la web part di Silverlight ospita l'applicazione Silverlight, consentendo la visualizzazione su SharePoint.

Aggiungere gli elementi di progettazione e il codice all'applicazione Silverlight

Per personalizzare l'applicazione Silverlight

  1. Aggiungere un riferimento ad un assembly a System.Windows.Data nell'applicazione Silverlight. Per ulteriori informazioni, vedere Procedura: aggiungere o rimuovere riferimenti utilizzando la finestra di dialogo Aggiungi riferimento.

  2. In Esplora soluzioni aprire il menu di scelta rapida per Riferimento, quindi scegliere Aggiungi riferimento.

    System_CAPS_noteNota

    Se si utilizza Visual Basic, è necessario scegliere l'icona Mostra tutti i file all'inizio di Esplora soluzioni per visualizzare il nodo Riferimenti.

  3. Nella casella Indirizzo della finestra di dialogo Aggiungi riferimento al servizio, immettere l'url del sito di SharePoint, ad esempio http://MySPSitequindi scegliere il pulsante Vai.

    Quando Silverlight individua il servizio ListData.svc di SharePoint OData, sostituisce l'indirizzo con il servizio URL completo. Per questo esempio, http://myserver è http://myserver/_vti_bin/ListData.svc.

  4. Selezionare il pulsante OK per aggiungerlo ad un progetto e utilizzare il nome predefinito del servizio, ServiceReference1.

  5. Sulla barra dei menu scegliere Compilazione, Compila soluzione.

  6. Aggiungere una nuova origine dei dati al progetto in base al servizio di SharePoint. Per fare questo, nel menu, scegliere Visualizza, Altre finestre, Origini dati.

    La finestra Origini dati mostra tutti i dati disponibili nell'elenco di SharePoint, ad esempio attività, annunci e calendario.

  7. Aggiungere dati dell'elenco di annunci all'applicazione Silverlight. È possibile trascinare "Annunci" dalla finestra di Origini dati nella finestra di progettazione Silverlight.

    Verrà creata una griglia di controllo associata all'elenco degli annunci sul sito SharePoint.

  8. Ridimensionare la griglia di controllo per adattarla alla pagina Silverlight.

  9. Nel file di codice MainPage.xaml (MainPage.xaml.cs per Visual C# o in MainPage.xaml.vb per Visual Basic), aggiungere i seguenti riferimenti allo spazi dei nomi.

    // Add the following three using statements.
    using SLApplication.ServiceReference1;
    using System.Windows.Data;
    using System.Data.Services.Client;
    
  10. Aggiungere la seguente dichiarazione della variabile all'inizio della classe.

    private TeamSiteDataContext context;
    private CollectionViewSource myCollectionViewSource;
    DataServiceCollection<AnnouncementsItem> announcements = new DataServiceCollection<AnnouncementsItem>();
    
  11. Sostituire la procedura UserControl_Loaded con quanto riportato di seguito:

    private void UserControl_Loaded_1(object sender, RoutedEventArgs e)
    {
        // The URL for the OData service.
        // Replace <server name> in the next line with the name of your 
        // SharePoint server.
        context = new TeamSiteDataContext(new Uri("http://ServerName>/_vti_bin/ListData.svc"));
    
        // Do not load your data at design time.
        if (!System.ComponentModel.DesignerProperties.GetIsInDesignMode(this))
        {
            //Load your data here and assign the results to the CollectionViewSource.
            myCollectionViewSource = (System.Windows.Data.CollectionViewSource)this.Resources["announcementsViewSource"];
            announcements.LoadCompleted += new EventHandler<LoadCompletedEventArgs>(announcements_LoadCompleted);
            announcements.LoadAsync(context.Announcements);
        }
    }
    

    Assicurarsi di sostituire il segnaposto ServerName con il nome del server che esegue SharePoint.

  12. Aggiungere la seguente routine di gestione degli errori.

    void announcements_LoadCompleted(object sender, LoadCompletedEventArgs e)
    {
        // Handle any errors.
        if (e.Error == null)
        {
            myCollectionViewSource.Source = announcements;
        }
        else
        {
            MessageBox.Show(string.Format("ERROR: {0}", e.Error.Message));
        }
    }
    

Modificare una proprietà nel progetto della web part di Silverlight per abilitare il debugging di Silverlight.

Per modificare la web part di Silverlight

  1. Aprire il menu di scelta rapida per il progetto della web part di Silverlight (SLWebPartTest), e scegliere Proprietà.

  2. Nella finestra Proprietà scegliere la scheda SharePoint.

  3. Se non è già selezionata, selezionare la casella di controllo Abilita debug Silverlight (anziché il debug degli script).

  4. Salvare il progetto.

Verificare la nuova web part di Silverlight in SharePoint per garantire che visualizzi l'elenco dei dati di SharePoint correttamente.

Per testare la web part di Silverlight

  1. Premere il tasto F5 per compilare ed eseguire la soluzione SharePoint.

  2. In SharePoint, nel menu Azioni sito, scegliere Nuova pagina.

  3. Nella finestra di dialogo Nuova pagina, immettere un titolo, come ad esempio SL Web Part Test, quindi selezionare il pulsante Crea.

  4. Nella finestra di progettazione della pagina, nella scheda Strumenti di modifica, scegliere Inserimento.

  5. Nell'elenco schede, scegliere Web part.

  6. Nella casella Categorie, scegliere la cartella Personalizza.

  7. Nell'elenco di Web part, selezionare la web part di Silverlight e scegliere il pulsante Aggiungi per aggiungere la web part alla finestra di progettazione.

  8. Dopo avere apportato tutte le aggiunte desiderate alla pagina Web, scegliere la scheda Pagina quindi scegliere il pulsante di Salva & Chiudi sulla barra degli strumenti.

    La web part di Silverlight dovrebbe ora visualizzare i dati degli annunci dal sito SharePoint. Per impostazione predefinita, la pagina viene archiviata nelle pagine del sito elencate in SharePoint.

    System_CAPS_noteNota

    Quando si accede ai dati in Silverlight tramite i domini, Silverlight protegge dalle vulnerabilità di sicurezza che possono essere utilizzare per effettuare uno exploit dell'applicazione web. Se si verificano problemi durante l'accesso ai dati remoti in Silverlight, vedere Rendere disponibile un servizio tra i limiti di dominio.

Mostra: