Udostępnij za pośrednictwem


Wskazówki: Tworzenie składnika Web Part programu Silverlight wyświetlającego dane OData dla programu SharePoint

SharePoint 2010 udostępnia dane listy za pomocą OData.W programie SharePoint usługa OData jest implementowana przez usługi REST ListData.svc.W tym instruktażu przedstawiono sposób tworzenia składnika web part programu SharePoint, na który obsługuje aplikację Silverlight.Aplikacji Silverlight Wyświetla informacje listy anonsów programu SharePoint przy użyciu ListData.svc.Aby uzyskać więcej informacji, zobacz Programu SharePoint Foundation RESZTA interfejs i Otwórz protokół danych.

W tym instruktażu przedstawiono następujące zadania:

  • Tworzenie aplikacji Silverlight i składnik Web Part Silverlight.

  • Dostosowywanie aplikacji Silverlight.

  • Dostosowywanie aplikacji Silverlight.

  • Dostosowywanie aplikacji Silverlight.

  • Testowanie składnik Web Part Silverlight.

[!UWAGA]

Na danym komputerze mogą być używane inne nazwy lub lokalizacje pewnych elementów interfejsu użytkownika programu Visual Studio, które są używane w poniższych instrukcjach. Używana wersja programu Visual Studio oraz jej ustawienia określają te elementy. Aby uzyskać więcej informacji, zobacz Visual Studio, ustawienia.

Wymagania wstępne

Potrzebne do przeprowadzenia tego instruktażu następujące składniki:

Tworzenie aplikacji Silverlight i składnik Web Part Silverlight

Najpierw należy utworzyć aplikację Silverlight w programie Visual Studio.Aplikacji Silverlight pobiera dane z listy anonsów programu SharePoint za pomocą usługi ListData.svc.

[!UWAGA]

Żadnej z wersji Silverlight przed 4.0 obsługuje wymaganych interfejsów do odwoływania się do danych listy programu SharePoint.

Aby utworzyć aplikację Silverlight i składnik web part Silverlight

  1. Na pasku menu wybierz pliku, Nowa, Projekt do wyświetlania Nowy projekt okno dialogowe.

  2. Rozwiń SharePoint albo węzeł Visual C# lub języka Visual Basic, a następnie wybierz polecenie 2010 węzła.

  3. W okienku szablony wybierz Składnik Web Part programu SharePoint 2010 Silverlight szablonu.

  4. W Nazwa wprowadź SLWebPartTest, a następnie wybierz OK przycisk.

    Kreatora dostosowania programu SharePoint pojawi się okno dialogowe.

  5. Na Określ witrynę i poziom zabezpieczeń dla debugowania strony, wprowadź adres URL witryny SharePoint server, w którym chcesz debugować definicji witryny lub użyj domyślnej lokalizacji (http://nazwy systemu/).

  6. W Co to jest poziom zaufania dla tego rozwiązania programu SharePoint? sekcji, wybierz opcję Wdrażanie rozwiązań gospodarstwa jako przycisku opcji.

    Chociaż w tym przykładzie użyto rozwiązanie farmy, projekty część sieci web Silverlight można wdrożyć jako gospodarstwo lub rozwiązania w trybie piaskownicy.Aby uzyskać więcej informacji na temat rozwiązania w trybie piaskownicy i rozwiązaniami farmy, zobacz Względy roztwór trybie piaskownicy.

  7. W jak chcesz skojarzyć składnik Web Part Silverlight sekcji Określić ustawienia konfiguracyjne Silverlight wybierz Tworzenie nowego projektu Silverlight i skojarzyć ją ze składnikiem web part przycisku opcji.

  8. Zmiany Nazwa do SLApplication, ustaw języka albo języka Visual Basic lub Visual C#, a następnie ustaw Wersja oprogramowania Silverlight do Silverlight 4.0.

  9. Wybierz wykończenie przycisk.Projekty są wyświetlane w Solution Explorer.

    Rozwiązanie zawiera dwa projekty: aplikację Silverlight i składnik web part Silverlight.Aplikacji Silverlight pobiera i wyświetla dane listy z programu SharePoint, a składnik web part Silverlight obsługuje aplikację Silverlight, umożliwiając wyświetlenie go w programie SharePoint.

Dostosowywanie aplikacji Silverlight

Dodaj elementy projektu i kodu do aplikacji Silverlight.

Aby dostosować aplikacji Silverlight

  1. Dodaj odwołanie zestawu do System.Windows.Data w aplikacji Silverlight.Aby uzyskać więcej informacji, zobacz Jak: Dodawanie lub usuwanie odwołań przez za pomocą okna dialogowego Dodaj odwołanie.

  2. W Solution Explorer, otwórz menu skrótów dla odwołania, a następnie wybierz polecenie Dodać odwołanie do usługi.

    [!UWAGA]

    Jeśli korzystasz z programu Visual Basic, należy wybrać Pokaż wszystkie pliki ikonę na górze Solution Explorer do wyświetlania odwołania węzła.

  3. W polu adresu Dodać odwołanie do usługi okno dialogowe Wprowadź adres URL witryny programu SharePoint, takich jak http://MySPSite, a następnie wybierz polecenie Go przycisk.

    Silverlight lokalizuje usługi SharePoint OData ListData.svc, zastępuje adres URL full service.Na przykład http://myserver staje się http://myserver/_vti_bin/ListData.svc.

  4. Wybierz OK przycisk, aby dodać odwołanie do usługi do projektu, a następnie użyj nazwy domyślnej usługi ServiceReference1.

  5. Na pasku menu wybierz budować, Budowania rozwiązania.

  6. Dodać nowe źródło danych do projektu, w oparciu o usługi programu SharePoint.Aby to zrobić, na pasku menu, wybierz opcję Widok, Windows inne, Źródła danych.

    Źródła danych okno pokazuje wszystkie dostępne dane listy programu SharePoint, takich jak zadania, anonsy i kalendarz.

  7. Dodać dane do listy Anonsy do aplikacji Silverlight.Można przeciągnąć "Anonsy" z Źródła danych do okna Projektanta Silverlight.

    Spowoduje to utworzenie siatki formantu związanego z listy Anonsy w witrynie programu SharePoint.

  8. Zmienić rozmiar formantu siatki, aby zmieścić na stronie Silverlight.

  9. W pliku kod MainPage.xaml (MainPage.xaml.cs dla programu Visual C#) lub MainPage.xaml.vb dla języka Visual Basic należy dodać następujące odwołania obszaru nazw.

    ' Add the following three Imports statements.
    Imports SLApplication.ServiceReference1
    Imports System.Windows.Data
    Imports System.Data.Services.Client
    
    // Add the following three using statements.
    using SLApplication.ServiceReference1;
    using System.Windows.Data;
    using System.Data.Services.Client;
    
  10. Dodaj następujące deklaracje zmiennych w górnej części klasy.

    Private context As TeamSiteDataContext
    Private myCollectionViewSource As CollectionViewSource
    Private announcements As New DataServiceCollection(Of AnnouncementsItem)()
    
    private TeamSiteDataContext context;
    private CollectionViewSource myCollectionViewSource;
    DataServiceCollection<AnnouncementsItem> announcements = new DataServiceCollection<AnnouncementsItem>();
    
  11. Zamień UserControl_Loaded procedurę z następujących czynności.

    Private Sub UserControl_Loaded_1(sender As Object, e As RoutedEventArgs)
        ' 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://<server name>/_vti_bin/ListData.svc"))
    
        ' Do not load your data at design time.
        If Not System.ComponentModel.DesignerProperties.GetIsInDesignMode(Me) Then
            'Load your data here and assign the results to the CollectionViewSource.
            myCollectionViewSource =   DirectCast(Me.Resources("announcementsViewSource"), System.Windows.Data.CollectionViewSource)
            announcements.LoadCompleted += New EventHandler(Of LoadCompletedEventArgs)(AddressOf announcements_LoadCompleted)
            announcements.LoadAsync(context.Announcements)
        End If
    End Sub
    
    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("https://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);
        }
    }
    

    Należy zastąpić nazwa_serwera symbol zastępczy z nazwą serwera, na którym jest uruchomiony program SharePoint.

  12. Dodaj następujące procedury obsługi błędów.

    Private Sub announcements_LoadCompleted(sender As Object, e As LoadCompletedEventArgs)
        ' Handle any errors.
        If e.[Error] Is Nothing Then
            myCollectionViewSource.Source = announcements
        Else
            MessageBox.Show(String.Format("ERROR: {0}", e.[Error].Message))
        End If
    End Sub
    
    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));
        }
    }
    

Modyfikowanie składnik Web Part Silverlight

Zmień właściwość w Silverlight projektu część sieci web w celu włączenia technologii Silverlight.

Aby zmodyfikować składnik web part Silverlight

  1. Otwórz menu skrótów dla projektu Silverlight część sieci web (SLWebPartTest), a następnie wybierz polecenie Właściwości.

  2. W Właściwości okno, wybierz opcję SharePoint kartę.

  3. Jeśli jeszcze nie jest wybrana, wybierz Silverlight Włączanie debugowania (zamiast debugowanie skryptów) pole wyboru.

  4. Zapisz projekt.

Testowanie składnik Web Part Silverlight

Test nowy składnik web part Silverlight w programie SharePoint, aby zapewnić prawidłowe wyświetlanie danych listy programu SharePoint.

Aby przetestować składnik web part Silverlight

  1. Wybierz klawisz F5, aby skompilować i uruchomić rozwiązanie programu SharePoint.

  2. W programie SharePoint na Akcje witryny menu, wybierz opcję Nową stronę.

  3. W Nowa strona okno dialogowe, wprowadź tytuł, na przykład SL Test część sieci Web, a następnie wybierz polecenie Tworzenie przycisk.

  4. W projektancie stron na Narzędzia do edycji tab, wybrać wstawić.

  5. Na pasku karty, wybierz opcję Web Part.

  6. W kategorii wybierz Niestandardowy folder.

  7. W Składników Web Part listy, wybierz składnik web part Silverlight, a następnie wybierz Dodaj przycisk, aby dodać składnik web part do projektanta.

  8. Po dokonaniu wszystkie dodatki do strony sieci web, które chcesz, wybierz opcję strony kartę, a następnie wybierz Zapisz & Zamknij przycisk na pasku narzędzi.

    Składnik web part Silverlight powinien teraz wyświetlanie ogłoszenie danych z witryny programu SharePoint.Domyślnie strony znajduje się na liście stron witryny programu SharePoint.

    [!UWAGA]

    Podczas uzyskiwania dostępu do danych w dodatku Silverlight w domenach, Silverlight chroni przed luk w zabezpieczeniach, które mogą posłużyć do wykorzystania aplikacji sieci web.Jeśli wystąpią problemy podczas uzyskiwania dostępu do zdalnych danych w dodatku Silverlight, zobacz dokonywanie usługi dostępne przez granice domeny.

Zobacz też

Koncepcje

Wdrażania, publikowania i uaktualnianie pakiety rozwiązań programu SharePoint

Inne zasoby

Tworzenie składników Web Part dla programu SharePoint