Beispiel #1
0
 private void btnGenerate_Click(object sender, EventArgs e)
 {
     SettingModel model = new SettingModel();
     model.ControllerName = txtControllerName.Text.Trim();
     model.ProgramName = txtProgramName.Text.Trim();
     model.Descript = txtDescript.Text.Trim();
     WriteFile("MvcController", "Controllers", model.ControllerName + "Controller.cs", model);
     WriteFile("MvcView", "Views\\" + model.ControllerName, "Index.cshtml", model);
     WriteFile("MvcModel", "Models", model.ControllerName + "IndexModel.cs", model);
     WriteFile("AngularApp", "Views\\" + model.ControllerName, "App.ts", model);
     WriteFile("AngularController", "Views\\" + model.ControllerName, "IndexController.ts", model);
     WriteFile("AngularModel", "Views\\App\\Model", model.ControllerName + "IndexModel.ts", model);
     WriteFile("TutorialMenu", "", "asset.cshtml", model);
     Process.Start(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Tutorial"));
 }
Beispiel #2
0
        private void WriteFile(string templateName, string folder, string fileName, SettingModel model)
        {
            Type type = this.FindType(templateName);
            if (type == null)//沒有此類別
                return;
            string areaPath = string.Format(@"{0}\{1}", AppDomain.CurrentDomain.BaseDirectory, "Tutorial");

            dynamic template = Activator.CreateInstance(type);
            template.Session = new Dictionary<string, object>();
            template.Session.Add("Setting", model);

            template.Initialize();
            string result = template.TransformText();

            string path = string.Format(@"{0}\{1}", areaPath, folder);
            string file = string.Format(@"{0}\{1}", path, fileName);
            if (!Directory.Exists(path))
                Directory.CreateDirectory(path);
            File.WriteAllText(file, result,Encoding.UTF8);
        }