/// <summary> /// Gets a template. /// </summary> /// <param name="pcehrHeader">PCEHR header.</param> /// <param name="request">Template parameters.</param> /// <returns>Response.</returns> public getTemplateResponse GetTemplate(CommonPcehrHeader pcehrHeader, getTemplate request) { // PCEHRHeaderValidator.Validate(pcehrHeader); Validation.ValidateArgumentRequired("request", request); var timestamp = new timestampType() { created = DateTime.Now }; var signatureContainer = new signatureContainerType(); return(templateClient.getTemplate(timestamp, ref signatureContainer, pcehrHeader.GetHeader <PCEHRHeader>(), request)); }
public void Sample() { // Obtain the certificate for use with TLS and signing X509Certificate2 cert = X509CertificateUtil.GetCertificate( "Serial Number", X509FindType.FindBySerialNumber, StoreName.My, StoreLocation.CurrentUser, true ); // Create PCEHR header CommonPcehrHeader header = PcehrHeaderHelper.CreateHeader(); // Interface requires this to be blank header.IhiNumber = null; // Create the client GetTemplateClient templateClient = new GetTemplateClient(new Uri("https://GetTemplateEndpoint"), cert, cert); // Add server certificate validation callback ServicePointManager.ServerCertificateValidationCallback += ValidateServiceCertificate; // Specify the objects that will hold the output getTemplateResponseTemplate responseTemplate; DateTime cacheExpiry = new DateTime(); try { var request = new getTemplate() { serviceRequestorOption = ServiceRequestorOption.FullPackage.ToString(), templateID = "document unique ID" }; // Invoke the service var responseStatusType = templateClient.GetTemplate( header, request); // Get the soap request and response string soapRequest = templateClient.SoapMessages.SoapRequest; string soapResponse = templateClient.SoapMessages.SoapResponse; } catch (FaultException e) { // Handle any errors } }