ITfjernundervisning

ASP.NET / Web services / Kald af web-services

Søger du et "rigtigt" ASP.NET kursus?


Ja, jeg holder ikke kun fjernundervisningskurser

- jeg kan også komme ud i din virksomhed og undervise med udgangspunkt i jeres data og udfordringer.


Kald af web-services

Der er en enkelt ting vi skal have på plads for at vi kan kalde vores web-service

  • Vi skal have etableret en proxy (forbindelse) til web-serveren

 

Visual Studio .NET

Etablering af proxy (reference)

For at oprette en forbindelse til en web-service i Visual Studio .NET vælges Project | Add Web Reference ...

Klik på Go og Add Reference.

Kald af webservice

Når man vil bruge webservicen fra sin kode skal man øverst i codebehind filen sørge for at importere referencen med linjen:

Imports Udvikling.dk.kursusmaterialer.www
(hvor Udvikling erstattes med navnet på dit projekt - brug evt. class browseren til at finde klassen)
using Udvikling.dk.kursusmaterialer.www;

Dernæst kan man med denne lille kodestump kalde web-servicen:

VB.NET

        Dim ws As New Webservicetest
        lblResultat.Text = ws.KilometerTilMiles(txtKm.Text)
DataGrid1.DataSource = ws.DuckTown()
   DataGrid1.DataBind()

C#

        Webservicetest ws = new Webservicetest();
    lblResultat.Text = ws.KilometerTilMiles(Convert.ToDecimal(txtKm.Text)).ToString();
DataGrid1.DataSource = ws.DuckTown();
   DataGrid1.DataBind();

WebMatrix

Etablering af proxy

Vi får heldigvis hjælp i WebMatrix til at etablere denne proxy :-)

Gå ind i Tools menuen og vælg Webservice Proxy Generator - udfyld informationerne på siden



Denne proces genererer en .dll fil, der skal ligge i bin folderen på din web-server og så er du klar til at bruge servicen.

 

Kald af webservice

Nedenfor er der en meget simpel lille kodestump, der udnytter én af de to funktioner i den web-service vi skrev før.

<%@ Page Language="VB" %>
<%@ Import namespace="nsService" %>
<script runat="server">

 Sub cmdKnap_Click(sender As Object, e As EventArgs)
  Dim ws As new nsService.Thors()
  lblResultat.Text = ws.KilometerTilMiles(txtKm.Text)
 End Sub

</script>

<html>
 <head>
 </head>
 <body>
  <form runat="server">
   <p>
   Km <asp:TextBox id="txtKm" runat="server"></asp:TextBox></p>
   <p><asp:Label id="lblResultat" runat="server">Label</asp:Label></p>
   <p>
   <asp:Button id="cmdKnap" onclick="cmdKnap_Click" runat="server" 
   Text="Beregn"></asp:Button></p>
  </form>
 </body>
</html>

Søgning med Google

Google tilbyder en fin web-service, der gør at man kan bruge Google som søgemaskine på sit site! (du kan teste det her på sitet). Du kan læse mere om servicen her (hos Google). Selve servicen har adressen: http://api.google.com/GoogleSearch.wsdl. Nedenfor kan du se min kode:

<%@ Page Language="vb" %>
<%@ import Namespace="Google" %>
<script runat="server">
Sub cmdKnap_Click(sender As Object, e As EventArgs)
  Dim ws As new Google.GoogleSearchService()
  Dim r as new Google.GoogleSearchResult()
  Dim rs as New Google.ResultElement
  r = ws.doGoogleSearch(" ** kode, der udleveres af Google **",_
  "site:www.kursusmaterialer.dk " + txtSearch.Text,0,10,true,"",false,"","","")
  lblResultat.Text ="<hr/>"
  If r.resultElements.Length <> 0 Then
    For each rs in r.resultElements
      lblResultat.Text += "<a class='searchTop' href='"+rs.Url + "'>"+ rs.title_
     + "</a><br/> "+rs.snippet+"<br/>" + "<a class='searchBottom' href='"+_
      rs.Url+"'>"+rs.url+"</a><br/><br/>"
    Next
    lblResultat.Text += "<hr/>"
  Else
    lblResultat.Text += "<p>Der blev desværre ikke fundet noget</p><hr/>"
  End if
End Sub
</script>
<html>
<head>
  <title>Kursusmaterialer - Søg - Thor Østergaard</title> 
</head>
<body>
  <h1>Søg og du skal finde</h1>
  <form runat="server">
    <b>Hvad vil du finde: </b>
    <asp:TextBox id="txtSearch" runat="server"></asp:TextBox>
    <asp:Button id="cmdKnap" onclick="cmdKnap_Click" runat="server" Text="Søg"></asp:Button>
    <asp:Label id="lblResultat" runat="server"></asp:Label>
  </form>
</body>
</html>

Når du har betalt for kurset får du adgang til øvelser til hver lektion.
Og når du har fået godkendt din besvarelse får du desuden adgang til mine løsningsforslag med ekstra tips og trix.


<<- Etablering af en web-service

Modeller ->>