internal static ProvisioningTemplate LoadProvisioningTemplateFromString(string xml, ITemplateProviderExtension[] templateProviderExtensions, Action <Exception> exceptionHandler) { var formatter = new XMLPnPSchemaFormatter(); XMLTemplateProvider provider = new XMLStreamTemplateProvider(); try { using (var stream = new MemoryStream(Encoding.UTF8.GetBytes(xml))) { return(provider.GetTemplate(stream, templateProviderExtensions)); } } catch (ApplicationException ex) { if (ex.InnerException is AggregateException) { if (exceptionHandler != null) { foreach (var exception in ((AggregateException)ex.InnerException).InnerExceptions) { exceptionHandler(exception); } } } } return(null); }
internal static ProvisioningTemplate LoadProvisioningTemplateFromString(string xml, ITemplateProviderExtension[] templateProviderExtensions) { var formatter = new XMLPnPSchemaFormatter(); XMLTemplateProvider provider = new XMLStreamTemplateProvider(); // Get the XML document from a File Stream Stream stream = new MemoryStream(Encoding.UTF8.GetBytes(xml)); return(provider.GetTemplate(stream)); }