Home   Cover Cover Cover Cover
 

Web-Oberfläche mittels ASP.NET

Zunächst legen wir das gewünschte Layout der Webseite in einer aspx-Datei fest, z.B.:

BookStore.aspx
<%@ Page language="C#" Inherits="BookStorePage" src="BookStore.aspx.cs" %>
<html>
  <body>
    <form Runat="server">
      <asp:TextBox ID="isbn" Runat="server"/>
      <asp:Button ID ="search" Text="Suchen" OnClick="Search" Runat="server"/>
      <hr>
      <table border="0">
        <tr>
          <td>Autor:</td>
          <td><asp:Label id="author" Runat="server"/>
        </tr>
        <tr>
          <td>Titel:</td>
          <td><asp:Label id="title" Runat="server"/>
        </tr>
        <tr>
          <td>Preis:</td>
          <td><asp:Label id="price" Runat="server"/>
        </tr>
      </table>
    </form>
  </body>
</html>

Die Programmlogik schreiben wir in einer Hintergrundcode-Datei, z.B.:

BookStore.aspx.cs
using System;
using System.Web.UI;
using System.Web.UI.WebControls;

public class BookStorePage: Page {
  protected TextBox isbn;
  protected Button search;
  protected Label author;
  protected Label title;
  protected Label price;
    
  public void Search(object sender, EventArgs e) {
    BookStoreService store = new BookStoreService();
    if (store.Available(isbn.Text)) {
      author.Text = store.Author(isbn.Text);
      title.Text = store.Title(isbn.Text);
      price.Text = store.Price(isbn.Text).ToString() + " Euro";
    } else {
      author.Text = title.Text = price.Text = "";
    }
  }
}

Da wir im Hintergrundcode auf den Web-Service BookStoreService aus Aufgabe 2 zugreifen, müssen wir wie dort beschrieben mittels wsdl.exe eine Proxy-Klasse des Web-Service erzeugen

  wsdl /out:BookStoreService.cs http://dotnet.jku.at/csbuch/solutions/24/BookStoreService.asmx?WSDL

und diese Klasse in ein DLL-Assembly übersetzen, das im Unterverzeichnis bin unseres virtuellen Verzeichnisses stehen muss:

  csc /target:library /out:bin\BookStoreService.dll BookStoreService.cs

Nun können wir unseren Browser auf unsere aspx-Datei richten, z.B.:
     http://dotnet.jku.at/csbuch/solutions/24/BookStore.aspx
und sehen die gewünschte Webseite.