using System;
using AIR.Services.Common.Data;
using AIR.Services.HazardAnalysis.Api;
using AIR.Services.HazardAnalysis.Data;
class SnippetGetHazardAnalysisResultsRequest
{
private static void GetHazardAnalysisResults(int businessUnitSid, int sqlInstanceSid, int analysisSid)
{
HazardAnalysisServiceClient hazardClient = new HazardAnalysisServiceClient();
GetHazardAnalysisResultsRequest request = new GetHazardAnalysisResultsRequest();
request.BusinessUnitSid = businessUnitSid;
request.SqlInstanceSid = sqlInstanceSid;
request.AnalysisSid = analysisSid;
/// Implement logic to loop through all the records.
int page = 1; int pageSize = 20;
request.PagingInfo = new PagingInfo { PageNumber = page, PageSize = pageSize };
GetHazardAnalysisResultsResponse response = hazardClient.GetHazardAnalysisResults(request);
if (response.Status.Code == StatusCode.Success)
{
foreach (HazardAnalysisResult result in response.Results)
{
/// Output some of the values from the Earthquake, Tropical Cyclone, and Flood hazard profiles.
/// The response also returns many other profile details.
Console.WriteLine("------------------ Location: " + result.LocationInfo.Address + " -----------------------");
Console.WriteLine(" --- Earthquake Profile: -----------------------");
Console.WriteLine("Average Annual Loss: " + result.EarthquakeResults.AverageAnnualLoss);
Console.WriteLine("Distance to Nearest Fault: " + result.EarthquakeResults.DistanceToNearestFault);
Console.WriteLine(" --- Tropical Cyclone Profile: -----------------------");
Console.WriteLine("Average Annual Loss: " + result.HurricaneResults.AverageAnnualLoss);
Console.WriteLine("Distance to Effective Coast: " + result.HurricaneResults.DistanceToEffectiveCoast);
Console.WriteLine(" --- Flood Profile: -----------------------");
Console.WriteLine("Flood Zone: " + result.FloodResults.FloodZone);
Console.WriteLine("Distance to 500 Year Flood Plain: " + result.FloodResults.ShortestDistanceTo500YearFloodPlain);
}
}
}
}