예제 #1
0
        private static void WriteBaseAppModules(FileInfo csprojFile)
        {
            DirectoryInfo       projectParent       = csprojFile.Directory;
            DirectoryInfo       appModules          = new DirectoryInfo(Path.Combine(projectParent.FullName, "AppModules"));
            HandlebarsDirectory handlebarsDirectory = ShellProvider.GetHandlebarsDirectory();
            string appName = Path.GetFileNameWithoutExtension(csprojFile.Name);

            AppModuleModel model = new AppModuleModel {
                BaseNamespace = appName, AppModuleName = appName
            };

            foreach (string moduleType in new string[] { "AppModule", "ScopedAppModule", "SingletonAppModule", "TransientAppModule" })
            {
                string moduleContent = handlebarsDirectory.Render($"{moduleType}.cs", model);
                if (string.IsNullOrEmpty(moduleContent))
                {
                    Message.PrintLine("{0}: Template for {1} is empty", handlebarsDirectory.Directory.FullName, moduleType);
                }
                string filePath = Path.Combine(appModules.FullName, $"{appName}{moduleType}.cs");
                if (!File.Exists(filePath))
                {
                    moduleContent.SafeWriteToFile(filePath, true);
                    Message.PrintLine("Wrote file {0}...", ConsoleColor.Green, filePath);
                }
            }
        }
예제 #2
0
 public ActionResult DeleteAppModule(AppModuleModel model)
 {
     if (ModelState.IsValid)
     {
         MenuDetails      _details = new MenuDetails();
         Enums.CrudStatus status   = _details.SetAppModule(model, Enums.CrudType.Delete);
         ReturnAlertMessage(status);
     }
     return(RedirectToAction("AddAppModule"));
 }