namespace Application.Cli { using Application; using Database.dbo; using DatabaseIntegrate.dbo; using Framework.Cli; using Framework.Cli.Config; using Framework.DataAccessLayer; using System.Collections.Generic; using System.IO; using System.Linq; /// /// Command line interface application. /// public class AppCliMain : AppCli { public AppCliMain() : base( typeof(HelloWorld).Assembly, // Register Application.Database dll typeof(AppMain).Assembly) // Register Application dll { } /// /// Set default values to create file ConfigCli.json if it does not exist. /// protected override void InitConfigCli(ConfigCli configCli) { string appTypeName = UtilCli.AppTypeName(typeof(AppMain)); var folderNameAngular = File.Exists(UtilCli.FolderName + "Application.Website/") ? "Application.Website/" : "Framework/Framework.Cli/Template/Application.Website/"; configCli.WebsiteList.Add(new ConfigCliWebsite() { DomainNameList = new List(new ConfigCliWebsiteDomain[] { new ConfigCliWebsiteDomain { EnvironmentName = "DEV", DomainName = "localhost", AppTypeName = appTypeName } }), FolderNameAngular = folderNameAngular, }); // Default ConnectionString (Windows) configCli.EnvironmentGet().ConnectionString = "Data Source=localhost; Initial Catalog=Application; Integrated Security=True;"; } /// /// Cli command generate. /// protected override void CommandGenerateIntegrate(GenerateIntegrateResult result) { // Hello World result.Add(Data.Query().OrderBy(item => item.Name)); result.AddKey(nameof(HelloWorld.Name)); } /// /// Cli command deploy. /// protected override void CommandDeployDbIntegrate(DeployDbIntegrateResult result) { // Hello World result.Add(HelloWorldIntegrateAppCli.RowList); } } }