Example #1
0
        private void btnGenerate_Click(object sender, EventArgs e)
        {
            var generateSettings = new List <GenerateSettings>();

            foreach (var control in pnlTempSettings.Controls)
            {
                var tsControl = control as TempSettingControl;
                if (tsControl != null)
                {
                    var settings = tsControl.GetSettings();
                    if (!settings.IsGenerate)
                    {
                        continue;
                    }

                    if (string.IsNullOrWhiteSpace(settings.TemplateFileName))
                    {
                        throw new Exception("模板文件名为空!");
                    }

                    generateSettings.Add(settings);
                }
            }
            if (generateSettings.Count == 0)
            {
                throw new Exception("你选择了0个生成模板!");
            }

            var modelFileNames = new List <string>();

            foreach (TreeNode node in tvDir.Nodes)
            {
                GetCheckedFiles(node, modelFileNames);
            }
            if (modelFileNames.Count == 0)
            {
                throw new Exception("你选择了0个模型文件!");
            }

            var modelParameters = new List <ModelParameter>();

            foreach (var modelFileName in modelFileNames)
            {
                modelParameters.Add(GenerateCodeHelper.GetModelParameters(modelFileName));
            }

            //foreach (var item in modelParameters)
            //{
            //    textBox1.Text = textBox1.Text + GenerateCodeHelper.GenerateCode(item, generateSettings);
            //}

            foreach (var item in generateSettings)
            {
                textBox1.Text = textBox1.Text + GenerateCodeHelper.GenerateCode(modelParameters, item);
            }
        }