示例#1
0
        public static void GerarProjeto(Parametros param, string prefixo1, string prefixo2, string prefixo3, string sufixo1, string sufixo2, string sufixo3)
        {
            // GERAR RegisterServices;
            string pfx1     = prefixo1 + param.NomeDaClasse;
            string pfx2     = prefixo2 + param.NomeDaClasse;
            string pfx3     = prefixo3 + param.NomeDaClasse;
            string sfx1     = param.NomeDaClasse + sufixo1;
            string sfx2     = param.NomeDaClasse + sufixo2;
            string sfx3     = param.NomeDaClasse + sufixo3;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathInfraCrossCuttingIoCTemplate, @"RegisterServices.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            template = template.Replace("{{Classe}}", param.NomeDaClasse);
            template = template.Replace("{{ClasseUpper}}", param.NomeDaClasse.ToUpper());
            template = template.Replace("{{Prefixo1Classe}}", pfx1);
            template = template.Replace("{{Prefixo2Classe}}", pfx2);
            template = template.Replace("{{Prefixo3Classe}}", pfx3);
            template = template.Replace("{{ClasseSufixo1}}", sfx1);
            template = template.Replace("{{ClasseSufixo2}}", sfx2);
            template = template.Replace("{{ClasseSufixo3}}", sfx3);

            var nomeArquivo = "RegisterServices.cs";

            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIoc);

            // GERAR CROSSCUTTING IOC project;
            template    = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathInfraCrossCuttingIoCTemplate, @"CrossCuttingIoCCSPROJ.txt");
            template    = template.Replace("{{Sistema}}", param.NomeDoSistema);
            nomeArquivo = $"{param.NomeDoSistema}.Infra.CrossCutting.IoC.csproj";
            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIoc);
        }
示例#2
0
        public static void Interfaces(Parametros param, string nomeDoMetodoObterTodos)
        {
            // GERAR IRepository;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathInterfaceTemplate, @"IRepository.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(true, template, "IRepository.cs", param.EnderecoDoProjetoDomain, @"Interfaces\");

            // GERAR IUnitOfWork;
            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathInterfaceTemplate, @"IUnitOfWork.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(true, template, "IUnitOfWork.cs", param.EnderecoDoProjetoDomain, @"Interfaces\");

            // GERAR IClasseRepository;
            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathInterfaceTemplate, @"IClasseRepository.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            template = template.Replace("{{Classe}}", param.NomeDaClasse);
            template = template.Replace("{{NomeDoMetodoObterTodos}}", nomeDoMetodoObterTodos);
            var atributo = param.ListaDeAtributos.Count > 0 ? param.ListaDeAtributos[0] : null;

            if (atributo != null)
            {
                string primeiroAtributoComTipo = $"{atributo.Tipo} {atributo.Nome.ToLower()}";
                template = template.Replace("{{PrimeiroAtributoComTipo}}", primeiroAtributoComTipo);
            }
            string nomeArquivo = $"I{param.NomeDaClasse}Repository.cs";

            GravarResultado.Gravar(true, template, nomeArquivo, param.EnderecoDoProjetoDomain, @"Interfaces\");

            // GERAR IUser;
            template    = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathInterfaceTemplate, @"IUser.txt");
            template    = template.Replace("{{Sistema}}", param.NomeDoSistema);
            nomeArquivo = $"IUser.cs";
            GravarResultado.Gravar(true, template, nomeArquivo, param.EnderecoDoProjetoDomain, @"Interfaces\");
        }
        public static void Data(Parametros param)
        {
            // GERAR ApplicationDbContext;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathIdentityDataTemplate, @"ApplicationDbContext.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = "ApplicationDbContext.cs";

            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIdentity, @"Data\");
        }
        public static void GerarProjeto(Parametros param)
        {
            // GERAR DOMAIN PROJECT;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathInfraDataProjectTemplate, @"Infra.Data.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = $"{param.NomeDoSistema}.Infra.Data.csproj";

            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraData);
        }
        public static void UoW(Parametros param)
        {
            // GERAR Repository (Generico);
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathUoWTemplate, @"UnitOfWork.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = "UnitOfWork.cs";

            GravarResultado.Gravar(true, template, nomeArquivo, param.EnderecoDoProjetoInfraData, @"UoW\");
        }
        public static void Mappings(Parametros param)
        {
            // GERAR Mappings;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathMappingsTemplate, @"StoredEventMap.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = "StoredEventMap.cs";

            GravarResultado.Gravar(true, template, nomeArquivo, param.EnderecoDoProjetoInfraData, @"Mappings\");
        }
        public static void EventSourcing(Parametros param)
        {
            // GERAR EventSourcing;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathEventSourcingTemplate, @"SqlEventStore.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = "SqlEventStore.cs";

            GravarResultado.Gravar(true, template, nomeArquivo, param.EnderecoDoProjetoInfraData, @"EventSourcing\");
        }
示例#8
0
        public static void Models(Parametros param)
        {
            DadosDaClasse.CriarConstrutor(param);
            DadosDaClasse.CriarAtributos(param, "private");
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathModelsTemplate, @"Model.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            template = template.Replace("{{Classe}}", param.NomeDaClasse);
            template = template.Replace("{{Atributos}}", param.Atributos);
            template = template.Replace("{{ConstrutorDaClasse}}", param.Construtor);
            GravarResultado.Gravar(false, template, param.NomeDaClasse + ".cs", param.EnderecoDoProjetoDomain, @"Models\");
        }
        public static void Extensions(Parametros param)
        {
            // GERAR ClaimsExtensions;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathIdentityExtensionsTemplate, @"ClaimsExtensions.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = "ClaimsExtensions.cs";

            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIdentity, @"Extensions\");

            // GERAR EmailSenderExtensions;
            template    = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathIdentityExtensionsTemplate, @"EmailSenderExtensions.txt");
            template    = template.Replace("{{Sistema}}", param.NomeDoSistema);
            nomeArquivo = "EmailSenderExtensions.cs";
            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIdentity, @"Extensions\");
        }
        public static void Authorization(Parametros param)
        {
            // GERAR ClaimRequirement;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathIdentityAuthorizationTemplate, @"ClaimRequirement.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = "ClaimRequirement.cs";

            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIdentity, @"Authorization\");

            // GERAR ClaimsRequirementHandler;
            template    = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathIdentityAuthorizationTemplate, @"ClaimsRequirementHandler.txt");
            template    = template.Replace("{{Sistema}}", param.NomeDoSistema);
            nomeArquivo = "ClaimsRequirementHandler.cs";
            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIdentity, @"Authorization\");
        }
        public static void GerarProjeto(Parametros param)
        {
            // GERAR in memory bus;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathInfraCrossCuttingBusTemplate, @"InMemoryBus.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = "InMemoryBus.cs";

            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingBus);

            // GERAR CROSSCUTTING project;
            template    = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathInfraCrossCuttingBusTemplate, @"CrossCuttingBusCSPROJ.txt");
            template    = template.Replace("{{Sistema}}", param.NomeDoSistema);
            nomeArquivo = $"{param.NomeDoSistema}.Infra.CrossCutting.Bus.csproj";
            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingBus);
        }
        public static void Models(Parametros param)
        {
            // GERAR ApplicationUsers;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathIdentityModelsTemplate, @"ApplicationUser.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = "ApplicationUser.cs";

            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIdentity, @"Models\");

            // GERAR AspNetUsers;
            template    = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathIdentityModelsTemplate, @"AspNetUser.txt");
            template    = template.Replace("{{Sistema}}", param.NomeDoSistema);
            nomeArquivo = "AspNetUser.cs";
            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIdentity, @"Models\");
        }
        public static void Context(Parametros param)
        {
            // GERAR EventStoreSQL;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathContextTemplate, @"EventStoreSQLContext.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = "EventStoreSQLContext.cs";

            GravarResultado.Gravar(true, template, nomeArquivo, param.EnderecoDoProjetoInfraData, @"Context\");

            // GERAR Context;
            template    = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathContextTemplate, @"Context.txt");
            template    = template.Replace("{{Sistema}}", param.NomeDoSistema);
            template    = template.Replace("{{Classe}}", param.NomeDaClasse);
            nomeArquivo = $"{param.NomeDoSistema}Context.cs";
            GravarResultado.Gravar(true, template, nomeArquivo, param.EnderecoDoProjetoInfraData, @"Context\");
        }
示例#14
0
        public static void Repositories(Parametros param, string nomeDoMetodoObterTodos)
        {
            // GERAR Repository (Generico);
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathRepositoriesTemplate, @"Repository.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = "Repository.cs";

            GravarResultado.Gravar(true, template, nomeArquivo, param.EnderecoDoProjetoInfraData, @"Repositories\");

            // GERAR ClasseRepository;
            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathRepositoriesTemplate, @"ClasseRepository.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            template = template.Replace("{{Classe}}", param.NomeDaClasse);
            template = template.Replace("{{NomeDoMetodoObterTodos}}", nomeDoMetodoObterTodos);
            var atributo = param.ListaDeAtributos.Count > 0 ? param.ListaDeAtributos[0] : null;

            if (atributo != null)
            {
                string primeiroAtributoComTipo = $"{atributo.Tipo} {atributo.Nome.ToLower()}";
                template = template.Replace("{{PrimeiroAtributoComTipo}}", primeiroAtributoComTipo);
                template = template.Replace("{{PrimeiroAtributo}}", atributo.Nome);
                template = template.Replace("{{PrimeiroAtributoLowerCase}}", atributo.Nome.ToLower());
            }
            nomeArquivo = $"{param.NomeDaClasse}Repository.cs";
            GravarResultado.Gravar(true, template, nomeArquivo, param.EnderecoDoProjetoInfraData, @"Repositories\");

            // GERAR EventStoreSQLRepository;
            template    = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathRepositoriesTemplate, @"EventSourcing\EventStoreSQLRepository.txt");
            template    = template.Replace("{{Sistema}}", param.NomeDoSistema);
            nomeArquivo = "EventStoreSQLRepository.cs";
            GravarResultado.Gravar(true, template, nomeArquivo, param.EnderecoDoProjetoInfraData, @"Repositories\EventSourcing\");

            // GERAR IEventStoreRepository;
            template    = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathRepositoriesTemplate, @"EventSourcing\IEventStoreRepository.txt");
            template    = template.Replace("{{Sistema}}", param.NomeDoSistema);
            nomeArquivo = "IEventStoreRepository.cs";
            GravarResultado.Gravar(true, template, nomeArquivo, param.EnderecoDoProjetoInfraData, @"Repositories\EventSourcing\");
        }
示例#15
0
        public static void Services(Parametros param)
        {
            // GERAR IEmailSender;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathIdentityServiceTemplate, @"IEmaiSender.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            var nomeArquivo = "IEmailSender.cs";

            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIdentity, @"Services\");

            // GERAR ISMSSender;
            template    = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathIdentityServiceTemplate, @"ISmsSender.txt");
            template    = template.Replace("{{Sistema}}", param.NomeDoSistema);
            nomeArquivo = "ISmsSender.cs";
            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIdentity, @"Services\");

            // GERAR MessageServices;
            template    = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathIdentityServiceTemplate, @"MessageService.txt");
            template    = template.Replace("{{Sistema}}", param.NomeDoSistema);
            nomeArquivo = "MessageServices.cs";
            GravarResultado.Gravar(false, template, nomeArquivo, param.EnderecoDoProjetoInfraCrossCutingIdentity, @"Services\");
        }
        public static void DomainCore(Parametros param)
        {
            // CRIAR A PASTA BUS e seus itens;
            string template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Bus.IMediatorHandler.txt");

            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "IMediatorHandler.cs", param.EnderecoDoProjetoDomainCore, @"Bus\");

            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Bus.HandlerResult.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "HandlerResult.cs", param.EnderecoDoProjetoDomainCore, @"Bus\");


            // CRIAR A PASTA COMMANDS e seus itens;
            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Commands.Command.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "Command.cs", param.EnderecoDoProjetoDomainCore, @"Commands\");

            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Commands.CommandResponse.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "CommandResponse.cs", param.EnderecoDoProjetoDomainCore, @"Commands\");

            // CRIAR A PASTA EVENTS e seus itens;
            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Events.Event.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "Event.cs", param.EnderecoDoProjetoDomainCore, @"Events\");

            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Events.IEventStore.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "IEventStore.cs", param.EnderecoDoProjetoDomainCore, @"Events\");

            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Events.IHandler.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "IHandler.cs", param.EnderecoDoProjetoDomainCore, @"Events\");

            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Events.Message.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "Message.cs", param.EnderecoDoProjetoDomainCore, @"Events\");

            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Events.StoredEvent.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "StoredEvent.cs", param.EnderecoDoProjetoDomainCore, @"Events\");

            // CRIAR A PASTA MODELS e seus itens;
            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Models.Entity.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "Entity.cs", param.EnderecoDoProjetoDomainCore, @"Models\");

            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Models.ValueObject.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "ValueObject.cs", param.EnderecoDoProjetoDomainCore, @"Models\");

            // CRIAR A PASTA NOTIFICATIONS e seus itens;
            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Notifications.DomainNotification.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "DomainNotification.cs", param.EnderecoDoProjetoDomainCore, @"Notifications\");

            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Notifications.DomainNotificationHandler.txt");
            template = template.Replace("{{Sistema}}", param.NomeDoSistema);
            GravarResultado.Gravar(false, template, "DomainNotificationHandler.cs", param.EnderecoDoProjetoDomainCore, @"Notifications\");

            // CRIAR O PROJETO DOMAIN.CORE
            template = LerTemplate.Ler(param.EnderecoDaPastaPadraoDoProgramaGerador, pathDomainCoreBusTemplate, @"Domain.Core.csproj.txt");
            GravarResultado.Gravar(false, template, $"{param.NomeDoSistema}.Domain.Core.csproj", param.EnderecoDoProjetoDomainCore);
        }