using System; using System.Collections.Generic; using System.Linq; using System.Text; using WmBigRegisterInterface.BigRegisterService; namespace WmBigRegisterInterface { public class BigRegisterInterface { public static bool isValidBigNumber(string value) { // first we do some simple check, to prevent traffic on the web service // 1) check if we have at least something: if (String.IsNullOrEmpty(value)) { return false; } // 2) the value must not exceed 11 if (value.Length > 11) { return false; } // 3) a big NUMBER is always a number. long number = 0; bool isNumber = long.TryParse(value, out number); if(!isNumber){ return false; } // allright, seems to be OK so far, prepare the call to the web service; bool isNumberVerified = false; BigRegisterService.PublicV4SoapClient client = new PublicV4SoapClient("PublicV4Soap"); BigRegisterService.ListHcpApproxRequest request = new BigRegisterService.ListHcpApproxRequest(); request.WebSite = SourceWebSite.Ribiz; request.RegistrationNumber = number.ToString(); try { BigRegisterService.ListHcpApproxResponse4 response = client.ListHcpApprox4(request); isNumberVerified = (response.ListHcpApprox.Length == 1); // Could do more magic by actually analysing the data here: //foreach (ListHcpApprox4 result in response.ListHcpApprox) { // Console.WriteLine("Read result: " + result.BirthSurname); //} } catch (Exception error) { System.Diagnostics.Trace.WriteLine("WmBigRegisterInterface.isValidBigNumber: error. " + error.Message); } return isNumberVerified; } } }