Ejemplo n.º 1
0
        public object RunScriptFileScalar(string connString, string scriptSqlPath)
        {
            string scriptSql = MyIOHelper.ReadAllText(scriptSqlPath);
            object result    = RunScriptScalar(connString, scriptSql);

            return(result);
        }
Ejemplo n.º 2
0
        public MessageResult RunScriptFile(string connString, string scriptSqlPath, string rollbackScriptPath = null)
        {
            string scriptSql      = MyIOHelper.ReadAllText(scriptSqlPath);
            string rollbackScript = null;

            if (!string.IsNullOrWhiteSpace(rollbackScriptPath))
            {
                rollbackScript = MyIOHelper.ReadAllText(rollbackScriptPath);
            }

            MessageResult mr = RunScript(connString, scriptSql, rollbackScript);

            return(mr);
        }
Ejemplo n.º 3
0
        public MessageResult RunScriptFile(string dbserver, string dbname, string dbuser, string dbpassword, string scriptSqlPath, string rollbackScriptPath = null)
        {
            string scriptSql      = MyIOHelper.ReadAllText(scriptSqlPath);
            string rollbackScript = null;

            if (!string.IsNullOrWhiteSpace(rollbackScriptPath))
            {
                rollbackScript = MyIOHelper.ReadAllText(rollbackScriptPath);
            }

            MessageResult mr = RunScript(dbserver, dbname, dbuser, dbpassword, scriptSql, rollbackScript);

            return(mr);
        }
Ejemplo n.º 4
0
        private void MainForm_Load(object sender, EventArgs e)
        {
            _templateConfig = _areaService.GetTemplateConfig();
            var areaConfig = _areaService.GetAreaConfig();

            this.txtAreaName.Text      = areaConfig.Area;
            this.txtProjectPrefix.Text = areaConfig.ProjectPrefix;

            templateDir = MyIOHelper.MakeSubFolderPath(AppDomain.CurrentDomain.BaseDirectory, _templateConfig.AreaPlaceHolder);
            var vr = _areaService.ValidateTemplateFolder(templateDir);

            if (!vr.Success)
            {
                MessageBox.Show(vr.Message);
                this.Close();
            }
        }
Ejemplo n.º 5
0
        private MessageResult CreateNewArea(string projectPrefixPlaceHolder, string areaPlaceHolder, IList <string> autoCreateFolders, string projectPrefix, string areaName, string templateFolderPath)
        {
            if (string.IsNullOrWhiteSpace(projectPrefix))
            {
                throw new ArgumentNullException(nameof(projectPrefix));
            }

            if (string.IsNullOrWhiteSpace(areaName))
            {
                throw new ArgumentNullException(nameof(areaName));
            }

            if (string.IsNullOrWhiteSpace(templateFolderPath))
            {
                throw new ArgumentNullException(nameof(templateFolderPath));
            }
            //生成思路:
            //1 将{{Area}}文件夹Copy一份,重命名为新的Area名称
            //2 检测并保证有几个空目录
            //    Content/css
            //    Content/scripts
            //3 修改如下:
            //    替换文本:
            //        替换{{ProjectPrefix}}
            //        替换{{Area}}
            //    替换文件名
            //        替换{{ProjectPrefix}}
            //        替换{{Area}}

            var    result  = new MessageResult();
            string areaDir = templateFolderPath.Replace(areaPlaceHolder, areaName);

            if (Directory.Exists(areaDir))
            {
                result.Message = string.Format("要创建的路径{0}\r\n处已经有一个同名模块,请确认!", areaDir);
                return(result);
            }

            try
            {
                string message = "";

                MyIOHelper.CopyFolder(templateFolderPath, areaDir);

                foreach (var subFolder in autoCreateFolders)
                {
                    MyIOHelper.PrepareSubFolder(areaDir, subFolder);
                }

                var files = MyIOHelper.GetFiles(areaDir, "*.*", SearchOption.AllDirectories);
                foreach (var file in files)
                {
                    string fileContent = MyIOHelper.ReadAllText(file);
                    var    saveContent = fileContent
                                         .Replace(projectPrefixPlaceHolder, projectPrefix)
                                         .Replace(areaPlaceHolder, areaName);

                    if (!MyIOHelper.TrySaveFile(file, saveContent, null, out message))
                    {
                        result.Message = message;
                        return(result);
                    }

                    var newFile = file
                                  .Replace(projectPrefixPlaceHolder, projectPrefix)
                                  .Replace(areaPlaceHolder, areaName);

                    if (!MyIOHelper.TryChangeFileName(file, newFile))
                    {
                        result.Message = string.Format("change file name failed: {0} -> {1}", file, newFile);
                        return(result);
                    }
                }

                result.Success = true;
                result.Message = "创建完毕";
                result.Data    = areaDir;
                return(result);
            }
            catch (Exception ex)
            {
                result.Message = ex.Message;
                return(result);
            }
        }