Page tree
Skip to end of metadata
Go to start of metadata

C# applications can use WHOS broker functionalities through the WCF Data Service Template plugin.

To have it working WCF Data Service Template plugin should be installed in Visual Studio through Extensions → Manage Extensions panel.

Then click on Add Connected Service in the Solution explorer panel. The following panel should show up:

Input the WHOS Hydro Server endpoint correspondent to the desired WHOS view:

Endpoint for Arctic view:

http://gs-service-production.geodab.eu/gs-service/services/essi/view/whos-arctic/cuahsi_1_1.asmx?WSDL

Endpoint for Plata river basin view:

http://gs-service-production.geodab.eu/gs-service/services/essi/view/whos-plata/cuahsi_1_1.asmx?WSDL


As a result of parsing the input WSDL C# client classes should be generated automatically.

Indeed, the Web Services Description Language (WSDL) is an XML-based description of a web service, which provides a machine-readable description of how the service can be called, what parameters it expects, and what data structures it returns.


It is now possible to use WHOS functionalities in your C# application, example given search for sites on a given area:

ServiceReference1.GetSitesByBoxObjectResponse response = await client.GetSitesByBoxObjectAsync(west, south, east, north, false, "");

For a more comprehensive example, please download the following package containing a sample program performing the following:

1) search for sites available in a bounding box using the GetSitesByBox operation 
2) select the first site and asks for site information using the GetSiteInfo operation (e.g. available time series and their info)
3) select the first time series and prints its info (e.g. variable name, begin and end dates)
4) download data from the first 10 days of the first series using the GetValues operation.

WHOS-client.zip

The sample package has been prepared and tested in cooperation with National Water Directorate of Uruguay (Darwin Javier Fernández, Alejandro Labissier, Juliana Morales Demarco).




  • No labels