Esempio n. 1
0
        private void GenerateDataLayer(Table table, string dalNameSpace, string businessNameSpace)
        {
            var class_name = GetClassName(table);

            var dalRepository         = PeasyConstants.GetRepositoryTemplate(dalNameSpace, businessNameSpace, class_name);
            var dalRepositoryfilePath = $"{_dataLayerProjectPath}/Repository/{class_name}Repository.cs";

            SaveFileThenAddToProject(dalRepositoryfilePath, dalRepository, _dalProject);
        }
Esempio n. 2
0
        private async Task GenerateBusinessLogic(Table table, string projectName, string nameSpace)
        {
            var class_name = GetClassName(table);

            DTECore.Settings.Postfix += " : DomainBase";
            var model_code = await DTECore.CreateModelAsync(table.DataBaseName, table.TableName);

            var businessDomainfilePath    = $"{_businessProjectPath}/Domain/{class_name}.cs";
            var businessDataProxyfilePath = $"{_businessProjectPath}/DataProxy/I{class_name}DataProxy.cs";
            var businessServicefilePath   = $"{_businessProjectPath}/Service/{class_name}Service.cs";
            var model_domain = PeasyConstants.GetDomainTemplate(nameSpace, model_code);
            var dataProxy    = PeasyConstants.GetDataProxyTemplate(nameSpace, projectName, class_name);
            var service      = PeasyConstants.GetServiceTemplate(nameSpace, class_name);

            SaveFileThenAddToProject(businessDomainfilePath, model_domain, _businessProject);
            SaveFileThenAddToProject(businessDataProxyfilePath, dataProxy, _businessProject);
            SaveFileThenAddToProject(businessServicefilePath, service, _businessProject);
        }
Esempio n. 3
0
        public async Task GeneratePeasyArchAsync()
        {
            var businessProjectName  = Path.GetFileNameWithoutExtension(_businessProjectPath);
            var dataLayerProjectName = Path.GetFileNameWithoutExtension(_dataLayerProjectPath);
            var businessNameSpace    = GetNameSpace(businessProjectName, _businessProjectPath);
            var dataLayerNameSpace   = GetNameSpace(dataLayerProjectName, _dataLayerProjectPath);

            SaveFileThenAddToProject(_businessProjectPath + "/Domain/DomainBase.cs", PeasyConstants.GetDomainBaseTemplate(businessNameSpace), _businessProject);
            SaveFileThenAddToProject(_businessProjectPath + $"/DataProxy/I{_projectName}DataProxy.cs", PeasyConstants.GetDataProxyBaseTemplate(businessNameSpace, _projectName), _businessProject);
            SaveFileThenAddToProject(_businessProjectPath + $"/Service/{_projectName}SeviceBase.cs", PeasyConstants.GetServiceBaseTemplate(businessNameSpace, _projectName), _businessProject);
            SaveFileThenAddToProject(_dataLayerProjectPath + "/Repository/RepositoryBase.cs", PeasyConstants.GetRepositoryBaseTemplate(dataLayerNameSpace, businessNameSpace, _projectName), _dalProject);

            foreach (var table in Tables)
            {
                await GenerateBusinessLogic(table, _projectName, businessNameSpace);

                GenerateDataLayer(table, dataLayerNameSpace, businessNameSpace);
            }
        }