Exemple #1
0
        private static void RenderAutoItem(string tplFile, ModelMeta model, DbSetting dbSetting, CodeFile codeFile, DatabaseTable table = null)
        {
            var pi             = App.Instance.Project;
            var absTplFile     = $"{pi.GetTemplateDirectory(model)}{tplFile}";
            var absTplAutoFile = $"{pi.GetTemplateDirectory(model)}{tplFile.Replace(".tpl", ".Auto.tpl")}";
            var clsAbsFile     = $"{pi.GetOutputDirectory(model, dbSetting.Name)}{codeFile.Name}";
            var clsAbsAutoFile = $"{pi.GetOutputDirectory(model, dbSetting.Name)}{codeFile.AutoName}";

            //自动代码
            var tpl = JnTemplateApp.CreateTemplate(absTplAutoFile);

            tpl.Set("pi", pi);
            tpl.Set("table", table);
            tpl.Set("model", model);
            tpl.Set("dbSetting", dbSetting);
            var clsAutoCode = tpl.Render();

            FileHelper.Save(clsAbsAutoFile, clsAutoCode, true);

            //手动代码
            tpl = JnTemplateApp.CreateTemplate(absTplFile);
            tpl.Set("pi", pi);
            tpl.Set("table", table);
            tpl.Set("model", model);
            tpl.Set("dbSetting", dbSetting);
            var clsCode = tpl.Render();

            FileHelper.Save(clsAbsFile, clsCode, false);

            CodeFiles.Add(codeFile);
        }
Exemple #2
0
        /// <summary>
        /// 生成程序集信息
        /// </summary>
        /// <param name="model"></param>
        public static void CreateAssembly(ModelMeta model)
        {
            var app      = App.Instance;
            var fileName = app.Project.GetTemplateFullPath("AssemblyInfo.tpl");
            //log.Debug(result);
            var template = JnTemplateApp.CreateTemplate(fileName);

            template.Set("model", model);
            var result = template.Render();
            var asFile = $"{app.Project.GetOutputDirectory(model)}Properties\\AssemblyInfo.cs";

            FileHelper.Save(asFile, result);
            log.Debug($"{model} 程序集信息写入完成");
            //return msg;
        }
Exemple #3
0
        public static void Render(string tplFile, ModelMeta model)
        {
            var pi       = App.Instance.Project;
            var codeFile = new CodeFile {
                Name = tplFile.Replace(".tpl", ".cs")
            };
            var absTplFile = $"{pi.GetTemplateDirectory(model)}{tplFile}";
            var clsAbsFile = $"{pi.GetOutputDirectory(model)}{codeFile.Name}";

            //手动代码
            var tpl = JnTemplateApp.CreateTemplate(absTplFile);

            tpl.Set("pi", pi);
            tpl.Set("model", model);
            var clsCode = tpl.Render();

            FileHelper.Save(clsAbsFile, clsCode, false);

            CodeFiles.Add(codeFile);
        }