static void Render(String mdl, String cfg) { XTrace.WriteLine("生成代码:模型{0} 配置{1}", mdl, cfg); var config = cfg.ToXmlFileEntity <ModelConfig>(); XTrace.WriteLine("模版:{0}", config.TemplateName); XTrace.WriteLine("输出:{0}", config.OutputPath); var xml = File.ReadAllText(mdl); var tables = DAL.Import(xml); var engine = new Engine(config); engine.Tables = tables; foreach (var item in tables) { XTrace.WriteLine("生成:{0}", item); engine.Render(item); } // 如果有改变,才重新写入模型文件 var xml2 = DAL.Export(tables); if (xml2 != xml) { File.WriteAllText(mdl, xml2); } }