The NZOR.Web.Service.Client is a light weight readonly .NET client wrapper designed to make access to the NZOR Web API simpler.
It is available as a NuGet package so that it can be easily incorporated into an application.
PM> Install-Package NZOR.Web.Service.Client |
Note: In the following examples an API key is not currently required. |
Be sure to include the following namespace
using NZOR.Web.Service.Client; |
The ServiceClient class is the main class for interacting with the API.
The following code is a small snippet that demonstrates how to display the result of retrieving a name.
var serviceClient = new ServiceClient("mykey", "http://data.nzor.org.nz"); var name = serviceClient.GetName(new Guid("61ccb72c-d60f-4cc0-a124-863869a2e2f4")); Console.WriteLine(name.FullName); |
More details about the structure of a name can be found on the API pages describing the name resource.
To use the search functionality of the client it is necessary to include the following namespace
using NZOR.Publish.Model.Search; |
The following code shows the basics for querying a name and iterating through the results.
var serviceClient = new ServiceClient("mykey", "http://data.nzor.org.nz"); var searchRequest = new SearchRequest(); searchRequest.Query = "lich*"; searchRequest.PageSize = 10; var searchResponse = serviceClient.Search(searchRequest); foreach (var result in searchResponse.Results) { Console.WriteLine(result.Name.FullName); } |
The following code enumerates the classification hierarchy for a name. The name information for each ancestor only includes the basic details for display so it may be necessary to make a separate call for each record using the name Id to obtain more details information.
var serviceClient = new ServiceClient("mykey", "http://data.nzor.org.nz"); var name = serviceClient.GetName(new Guid("000018af-1183-46f7-8d80-0729ae07401f")); Console.WriteLine(name.FullName); Console.WriteLine(); foreach (var ancestorName in name.ClassificationHierarchy) { Console.WriteLine(String.Format("{0}: {1}", ancestorName.Rank, ancestorName.FullName)); } Console.ReadKey(); |