Esempio n. 1
0
 /// <summary>
 /// 反序列化报表模板
 /// </summary>
 /// <param name="p_define"></param>
 /// <returns></returns>
 internal static Task <RptRoot> DeserializeTemplate(string p_define)
 {
     return(Task.Run(() =>
     {
         RptRoot root = new RptRoot();
         if (!string.IsNullOrEmpty(p_define))
         {
             try
             {
                 using (StringReader stream = new StringReader(p_define))
                 {
                     using (XmlReader reader = XmlReader.Create(stream, new XmlReaderSettings()
                     {
                         IgnoreWhitespace = true, IgnoreComments = true, IgnoreProcessingInstructions = true
                     }))
                     {
                         reader.Read();
                         root.ReadXml(reader);
                     }
                 }
             }
             catch (Exception ex)
             {
                 throw new Exception(string.Format("反序列化报表模板时异常:{0}", ex.Message));
             }
         }
         return root;
     }));
 }