Sdílet prostřednictvím


Návod: Připojování k datům ve webové službě (Windows Forms)

Tento názorný postup ukazuje, jak připojit pomocí služby WWW aplikace Průvodce konfigurací zdroje dat. Bude připojení k webové službě Live Search a spustit z vaší aplikace vyhledávací dotazy. Data vrácená service (výsledky prohledávání) se zobrazí na formuláři systému Windows.

Úlohy v tomto návodu zahrnují:

  • Vytvoření nového Aplikace systému Windows projektu.

  • Přidání do aplikace odkaz služby (připojení ke službě Live Search).

  • Přidání ovládacích prvků, spusťte vyhledávací dotazy (volání metody prostřednictvím služby).

  • Psaní kódu pro přístup ke službě a vrátit data.

  • Vázání dat ze služby vrácen objekt BindingSource.

  • Zobrazení dat vrácených z služby v mřížce.

Získání AppID

AppID z Live Search je k dispozici zdarma a jednoznačně identifikuje aplikaci služby Live Search. AppID vyžaduje přístup ke službě.

Získání AppID

  • Přejít na http://search.live.com/developer a získejte zdarma AppID

    Poznámka

    Pro AppID ověřit pomocí služby může trvat nějakou dobu (30-60 minut).V rámci tohoto obecného "klienta chyba setkáte doby při spuštění aplikace, je pravděpodobné, že AppID je stále v procesu povolování na serverech Live Search.

Vytváření projektu

Vytvořit nový projekt

  1. Z soubor nabídka, vytvoření nového projektu.

  2. Vyberte Aplikace model Windows Forms s názvem WebServiceWalkthrough.

  3. Klikněte na tlačítko OK.

    Projekt je vytvořena a přidána do Aplikaci Solution Explorer.

Připojování ke službě

Připojit k webové službě spuštěním Průvodce konfigurací zdroje dat.

  1. V nabídce Data klikněte na tlačítko Zobrazit zdroje dat.

  2. V Zdroje dat vyberte Přidat nový zdroj dat.

  3. Vyberte služby na Vyberte typ zdroje dat stránky a klepněte na tlačítko Další.

  4. Typ https://soap.search.msn.com/webservices.asmx?wsdl v URL pole Přidat odkaz na službu dialogové okno.

  5. Klepněte na tlačítko Přejít.

  6. Po nalezení webové služby změnit obor názvů na: LiveSearchService.

  7. Klepněte na tlačítko OKa klepněte na tlačítko Dokončit referenční služby do projektu přidat.

    Referenční služby je do projektu a Zdroje dat okno je naplněna na základě položek vrácený službou.

Poznámka

Protože různé webové služby poskytují různé funkce, další kroky v tomto návodu jsou specifické spotřeby webové služby Live Search.Typický proces spotřeby data ze služby je vytvořit instanci služby a potom voláním metody prostřednictvím služby.Po přetažení položky z okna zdroje dat formuláře by měl obsahovat objekt BindingSource komponenty; nastavit DataSource vlastnost data vrácený službou.

Vytváření prvku DataGridView zobrazovat data vrácený službou

Vytvořit přetažením položek z mřížky dat vázaná data Zdroje dat okna, do formuláře. Po přidání tabulky konfigurace sloupce, které chcete zobrazit pouze sloupce chcete prezentovat. Potom nastavte sloupec Url odkaz tak mohou uživatelé klepnout na adresu url a procházet weby vrácené vyhledávacím dotazu.

Vytvořit ovládací prvek DataGridView vázán na data

  1. Rozbalte SearchResponse v uzlu Zdroje dat okna.

  2. Rozbalte odpovědi uzel.

  3. Přetáhněte výsledky uzlu do formuláře.

    Ovládací prvek DataGridView, objekt BindingSource a BindingNavigator provádí jsou přidány do formuláře.

  4. Vyberte resultsDataGridView, který byl přidán do formuláře.

  5. V Vlastnosti vyberte okno sloupce vlastnost a klepněte na tlačítko se třemi tečkami (…) otevřete Dialogové okno Upravit sloupce (Zobrazení návrhu).

  6. Vyberte Url sloupce a nastavit:

    1. ColumnType vlastnost DataGridViewLinkColumn.

    2. AutoSizeMode vlastnost AllCells.

  7. Odebrat všechny sloupce kromě hlavy, Popis, a Url sloupce.

  8. Klikněte na tlačítko OK.

Přidání ovládacích prvků pro zadávání vyhledávacích kritérií a spuštěna vyhledávací dotaz

Přidání ovládacích prvků do stávající pruh nástrojů pro spouštění vyhledávací dotazy.

Do formuláře přidat textové pole a tlačítko

  1. Klepněte pravým tlačítkem myši na ikonu disku potlačených na pruh nástrojů formuláře a zvolte Vložit následuje textové pole.

  2. V Vlastnosti okno, nastavte název vlastnost searchCriteriaTextBox.

  3. Nastavit textu vlastnost Visual Studio.

  4. Pruh nástrojů přidat tlačítko s názvem searchButton.

  5. V Vlastnosti okno, nastavte DisplayStyle vlastnost textu.

  6. Nastavit textu vlastnost hledání.

Vytvoření obslužné rutiny události k otevření webu klepnul v mřížce

Přidejte obslužnou rutinu události pro CellContentClick událostí.

Vytvoření obslužné rutiny události CellContentClick

  1. Vyberte resultsDataGridView ve formuláři a klepněte na tlačítko události v Vlastnosti okna. Tlačítko události je tlačítko s ikonou lightning šroubu.

  2. Poklepáním CellContentClick a vytvořit přejděte k inzerováním obslužnou rutinu události.

  3. Přidáte kód zkontrolovat sloupec, jehož jste klepli a přejít na webovou stránku po kliknutí na sloupec adresy Url:

    Private Sub ResultsDataGridView_CellContentClick( _
        ByVal sender As System.Object, _
        ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) _
        Handles ResultsDataGridView.CellContentClick
    
        ' When the content in a cell is clicked check to see if it is the Url column.
        ' If it is, pass the url to the Process.Start method to open the web page.
        If ResultsDataGridView.Columns(e.ColumnIndex).DataPropertyName = "Url" Then
            System.Diagnostics.Process.Start(ResultsDataGridView.SelectedCells(0).Value)
        End If
    End Sub
    
    private void resultsDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
    {
        // When the content in a cell is clicked check to see if it is the Url column.
        // If it is, pass the url to the Process.Start method to open the web page.
        if (resultsDataGridView.Columns[e.ColumnIndex].DataPropertyName == "Url")
        {
            System.Diagnostics.Process.Start(resultsDataGridView.SelectedCells[0].Value.ToString());
        }
    }
    

Přidání kódu pro přístup služby Live Search a spuštění dotazu pro hledání

Přístup ke službě konkretizaci instance služby v aplikaci a volání metod prostřednictvím služby.

Přístup a využívat služby

  1. Form1 otevřít v editoru kódu.

  2. Form1 přidejte následující metodu:

    Private Sub RunSearchRequest()
    
        ' Create an instance of the service.
        Dim searchService As New LiveSearchService.MSNSearchPortTypeClient
    
        ' Instantiate a new SearchRequest.
        Dim searchRequest As New LiveSearchService.SearchRequest
    
        ' Create a new SourceRequest.
        Dim sourceRequest(1) As LiveSearchService.SourceRequest
        sourceRequest(0) = New LiveSearchService.SourceRequest
    
        ' To search the web, set the SourceType to Web.
        sourceRequest(0).Source = LiveSearchService.SourceType.Web
    
        ' Set the columns you want the query to return.
        sourceRequest(0).ResultFields = _
            LiveSearchService.ResultFieldMask.Description And _
            LiveSearchService.ResultFieldMask.Url And _
            LiveSearchService.ResultFieldMask.Title
    
        ' Search for the text in the textbox.
        searchRequest.Query = searchCriteriaTextBox.Text
    
        ' Set the SearchRequest to the SourceRequest array.
        searchRequest.Requests = sourceRequest
    
    
        ' Replace with a valid AppID. Obtain a free AppID at:
        ' http://search.live.com/developer 
        searchRequest.AppID = "AppID"
        searchRequest.CultureInfo = "en-US"
    
        ' Create a SearchResponse, then call the Search method
        ' and assign the return value to the response object.
        Dim searchResponse As LiveSearchService.SearchResponse = _
            searchService.Search(searchRequest)
    
        ' Bind the results to the form's BindingSource.
        ResultsBindingSource.DataSource = searchResponse.Responses(0).Results
    End Sub
    
    private void RunSearchRequest()
    {
        // Create an instance of the service.
        LiveSearchService.MSNSearchPortTypeClient searchService =
            new LiveSearchService.MSNSearchPortTypeClient();
    
        // Instantiate a new search request.
        LiveSearchService.SearchRequest searchRequest = new LiveSearchService.SearchRequest();
    
        // Create a new SourceRequest.
        LiveSearchService.SourceRequest[] sourceRequest = new LiveSearchService.SourceRequest[1];
        sourceRequest[0] = new LiveSearchService.SourceRequest();
    
        // Set the number of results to return.
        sourceRequest[0].Count = 7;
    
        // To search the web, set the SourceType to Web.
        sourceRequest[0].Source = LiveSearchService.SourceType.Web;
    
        // Set the columns to be returned from the search query.
        sourceRequest[0].ResultFields = LiveSearchService.ResultFieldMask.Description |
            LiveSearchService.ResultFieldMask.Url |
            LiveSearchService.ResultFieldMask.Title;
    
        // Set the search query to the value in the text box.
        searchRequest.Query = searchCriteriaTextBox.Text;
    
        // Set the search request to the array of source requests.
        searchRequest.Requests = sourceRequest;
    
        // Replace with a valid AppID. Obtain a free AppID at:
        // http://search.live.com/developer 
        searchRequest.AppID = "AppID";
        searchRequest.CultureInfo = "en-US";
    
        // Create a SearchResponse, then call the search method
        // and assign the return value to the response object.
        LiveSearchService.SearchResponse searchResponse = searchService.Search(searchRequest);
    
        // Bind the results from the search query to the form's BindingSource.
        resultsBindingSource.DataSource = searchResponse.Responses[0].Results;
    }
    

Poznámka

Nezapomeňte nahradit searchRequest.AppID = "AppID" s AppID hodnota získaná ze služby Live Search.

Vytvoření obslužné rutiny události při klepnutí na tlačítko Hledat Spustit hledání

Vytvoření obslužné rutiny události pro událost searchButton.Click a volat metodu RunSearchRequest.

Provádět vyhledávání při klepnutí na tlačítko

  1. Otevřít Form1 v návrhovém zobrazení.

  2. Poklepáním hledání tlačítko.

  3. V obslužné rutině generované přidejte následující řádek kódu:

    Private Sub searchButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles searchButton.Click
        RunSearchRequest()
    End Sub
    
    private void searchButton_Click(object sender, EventArgs e)
    {
        RunSearchRequest();
    }
    

Spuštění aplikace

Spusťte aplikaci a vyhledávání.

Spusťte aplikaci a vyhledávání

  1. Spuštění aplikace (stiskněte klávesu F5).

  2. Klepněte na tlačítko hledání hledání na webu pro Visual Studio, výchozí text searchCriteriaTextBox.

    Mřížka se zobrazuje prvních deset výsledků.

  3. Klepněte na jednu z adres URL, přejděte na webový server.

  4. Typ Počasí Redmond WA v textovém poli a klepněte na hledání.

    Aktualizace tabulky s nových výsledků hledání.

Další kroky

K služby Live Search je určena pouze jako výchozí bod pro pochopení způsobu zobrazení dat vrácených z služby pomocí funkce vazby dat v model Windows Forms aplikacích. Po připojení k jiné služby a po přetažení položek z Zdroje dat okno formuláře by měl obsahovat objekt BindingSource komponenty; nastavit DataSource vlastnost data vrácený službou. Další informace naleznete v tématu BindingSource – přehled komponenty.

Poznámka

Položky, které se zobrazují v Zdroje dat okna jsou závislé na informace, které webová služba vrátí.Některé webové služby nebude pravděpodobně poskytovat dostatek informací Průvodce konfigurací zdroje dat vytvořte vazbu objekty.Například pokud je webová služba vrátí objekt neposkytuje žádné zjistitelné schématu pak žádné položky se zobrazí v Zdroje dat okno po dokončení průvodce.

K přidání funkcí do aplikace

Viz také

Koncepty

Vázání ovládacích prvků k datům v sadě Visual Studio

Upravování dat ve vaší aplikaci

Ověřování dat

Ukládání dat

Další zdroje

Návody k datům