BitStadt – Berlin · Hamburg · Amsterdam

Geografie, Infrastruktur und Kultur

Berlin-Flagge Hamburg-Flagge Amsterdam-Flagge
Berlin

Implementierungsbeispiele

Die folgenden Beispiele sollen dir helfen, die Schnittstelle zu verwenden. Dazu behandelt ein Beispiel den Abruf von Informationen eines Bezirkes und ein weiteres das Abrufen einer Liste von Bezirken. Die Beispiele stehen derzeit für folgende Sprachen zur Verfügung:


C♯

Vorbereitungen

  1. Füge in Visual Studio folgenden Dienstverweis im Namensraum BitStadt zu deinem Projekt hinzu:

    http://api.bitstadt.de/WebService/API.svc?singleWSDL
  2. Binde den Namensraum im Namensraum deiner Anwendung (z. B. MeineAnwendung) ein:

    using MeineAnwendung.BitStadt;
  3. Erzeuge eine Instanz der automatisch generierten Klasse APIClient:

    APIClient client = new APIClient();

Beispiel #1: Daten zum Bezirk "Lichtenberg" abrufen

  1. Rufe die Methode GetDistrict auf client mit dem Parameter 1 als districtID für Lichtenberg auf:

    District district = client.GetDistrict(1);
  2. Nach der Zuweisung an district stehen dir nun beispielsweise folgende Informationen zur Verfügung:

      // Geo-Koordinaten
    Position position = district.Position;
    
    double? latitude  = position.Latitude;   // geographischer Breitengrad
    double? longitude = position.Longitude;  // geographischer Längengrad
    
      // Fläche in km²
    double? area = district.Area;
    
      // Bevölkerung
    int? population = district.Population;
    
      // Wikipedia-Artikel
    string wikipediaArticle = district.WikipediaArticle;

Für eine detaillierte Übersicht aller verfügbaren Daten steht die API-Referenz zur Verfügung.

Beispiel #2: Bezirke mit dem Titel "Lichtenberg" abrufen

  1. Rufe die Methode GetDistrictList auf client mit dem Parameter "Lichtenberg" als title auf:

    District[] districtList = client.GetDistrictList("Lichtenberg");
    	/* ODER, je nach deiner Konfiguration */
    List<District> districtList = client.GetDistrictList("Lichtenberg");
  2. Nach der Zuweisung an districtList kannst du nun alle Elemente durchlaufen und beispielsweise in einer ListBox ausgeben:

    foreach(District district in districtList) {
    	listBox.Items.Add(district.Title + ", Einwohner: " + district.Population);
    }

Die Liste enthält in diesem Fall übrigens zwei Elemente, da Lichtenberg zugleich Bezirk und Ortsteil (des gleichnamigen Bezirkes) ist. Ob ein Eintrag ein Bezirk und kein Ortsteil ist erkennst du ganz einfach daran, dass bei Bezirken ParentDistrict auf null gesetzt ist.

Hinweise

Alle weiteren verfügbaren Methoden verhalten sich grundsätzlich wie diese beiden Fälle.

Bei Fragen oder Anregungen kannst du mich natürlich jederzeit gerne kontaktieren.


PHP

Vorbereitungen

  1. Erzeuge wie folgt eine Instanz der Klasse SoapClient:

    $client = new SoapClient('http://api.bitstadt.de/WebService/API.svc?singleWSDL');

Beispiel #1: Daten zum Bezirk "Lichtenberg" abrufen

  1. Rufe die Methode GetDistrict auf $client mit dem Parameter 1 als districtID für Lichtenberg auf:

    $district = $client->GetDistrict(['districtID' => 1])->GetDistrictResult;
  2. Durch die Zuweisung an $district stehen dir nun beispielsweise folgende Informationen zur Verfügung:

      // Geo-Koordinaten
    $position = $district->Position;
    
    $latitude  = $position->Latitude;   // geographischer Breitengrad
    $longitude = $position->Longitude;  // geographischer Längengrad
    
      // Fläche in km²
    $area = $district->Area;
    
      // Bevölkerung
    $population = $district->Population;
    
      // Wikipedia-Artikel
    $wikipediaArticle = $district->WikipediaArticle;

Für eine detaillierte Übersicht aller verfügbaren Daten steht die API-Referenz zur Verfügung. Mit print_r($district) lassen sich alle Daten anzeigen, was insbesondere zum Debugging nützlich sein kann und einen schnellen Überblick verschafft.

Beispiel #2: Bezirke mit dem Titel "Lichtenberg" abrufen

  1. Rufe die Methode GetDistrictList auf $client mit dem Parameter "Lichtenberg" als title auf:

    $districtList = $client->GetDistrictList(['title' => 'Lichtenberg'])->GetDistrictListResult;
  2. Durch die Zuweisung an $districtList kannst du nun alle Elemente durchlaufen und beispielsweise als Liste ausgeben:

    echo '<ul>';
    foreach($districtList->District as $district) {
    	echo '<li>'.$district->Title.', Einwohner: '.$district->Population.'</li>';
    }
    echo '</ul>';

Die Liste enthält in diesem Fall übrigens zwei Elemente, da Lichtenberg zugleich Bezirk und Ortsteil (des gleichnamigen Bezirkes) ist. Ob ein Eintrag ein Bezirk und kein Ortsteil ist erkennst du ganz einfach daran, dass bei Bezirken ParentDistrict auf null gesetzt ist.

Hinweise

Alle weiteren verfügbaren Methoden verhalten sich grundsätzlich wie diese beiden Fälle.

Bei Fragen oder Anregungen kannst du mich natürlich jederzeit gerne kontaktieren.

« back to summary