示例#1
0
        private void button1_Click(object sender, EventArgs e)
        {
            DataConnectionDialog dialog = new DataConnectionDialog();
            //添加数据源列表,可以向窗口中添加自己程序所需要的数据源类型
            dialog.DataSources.Add(DataSource.SqlDataSource);
            //  dialog.DataSources.Add(DataSource.OdbcDataSource);
            // DataSource.AddStandardDataSources(dialog);

            dialog.SelectedDataSource = DataSource.SqlDataSource;
            dialog.SelectedDataProvider = DataProvider.SqlDataProvider;
            if (!(string.IsNullOrEmpty(txtConnectionString.Text)))
            {
                dialog.ConnectionString = txtConnectionString.Text;
            }

            //只能够通过DataConnectionDialog类的静态方法Show出对话框
            //不同使用dialog.Show()或dialog.ShowDialog()来呈现对话框
            if (DataConnectionDialog.Show(dialog, this) == DialogResult.OK)
            {
                AzBaseSet baseSet = AzNormalSet.GetAzNormalSet().AzBase;//  AzBaseSet.GetBaseSet();
                baseSet.AzConnectionString = dialog.ConnectionString;
                AzBaseSet.AzSetBaseCnns(baseSet);
                txtConnectionString.Text = dialog.ConnectionString;
                //AzDataSourceSet.AzSetConnectionString(dialog.ConnectionString);
            }
        }
示例#2
0
        public static string GetCurrentTemplatePath()
        {
            var    azset    = AzNormalSet.GetAzNormalSet().AzBase;
            string filspath = azset.AzTemplateFolder + @"\";

            return(filspath);
        }
        //  private string currentObjType = "TABLE";
        public AzCdgnDBSchema()
        {
            InitializeComponent();
            //

            treeView1.Nodes.Add(tablesNode);
            treeView1.Nodes.Add(customTablesNode);
            treeView1.Nodes.Add(viewsNode);
            //treeView1.Nodes.Add(customViewsNode);
            treeView1.Nodes.Add(childViewsNode);
            treeView1.Nodes.Add(storedProcedureNode);

            listNodes.Add(tablesNode);
            listNodes.Add(customTablesNode);
            listNodes.Add(viewsNode);
            //listNodes.Add(customViewsNode);
            listNodes.Add(childViewsNode);
            listNodes.Add(storedProcedureNode);
            tablesNode.ExpandAll();
            atkTreeView = treeView1;

            if (DesignMode)
            {
                return;
            }
            if (string.Compare(System.Diagnostics.Process.GetCurrentProcess().ProcessName, "devenv") == 0)
            {
                return;
            }
            WorkObjModeInit();
            this.labAppNameDisplay.Text = AzNormalSet.GetAzNormalSet().AzBase.AzNick;
        }
示例#4
0
        public static void SaveCodeToFile(string dir, string floder, string fildName, string codes, string ext = ".cs")
        {
            string codepath = AzNormalSet.GetAzNormalSet().AzBase.AzSaveCodeFileFloder;

            if (string.IsNullOrEmpty(codepath))
            {
                dir = currentDir + @"\生成的代码\" + dir + @"\" + floder;
            }
            else
            {
                dir = codepath + @"\生成的代码\" + dir + @"\" + floder;
            }

            if (!Directory.Exists(dir))
            {
                Directory.CreateDirectory(dir);
            }


            using (FileStream file = new System.IO.FileStream(dir + @"\" + fildName + ext, System.IO.FileMode.Create, System.IO.FileAccess.Write))
            {
                using (System.IO.TextWriter text = new System.IO.StreamWriter(file, System.Text.Encoding.UTF8))
                {
                    text.Write(codes);
                }
            }
        }
示例#5
0
        public AzDataBSetEdit()
        {
            InitializeComponent();
            AzBaseSet baseSet = AzNormalSet.GetAzNormalSet().AzBase; //AzBaseSet.GetBaseSet();
            txtConnectionString.Text = baseSet.AzConnectionString;//.AzGetConnectionString();
            f_Progress = new F_Progress(backgroundWorker1);

        }
示例#6
0
        public AtkForm()
        {
            var azNormal = AzNormalSet.GetAzNormalSet();

            if (azNormal != null)
            {
                azNormalSet = azNormal;
            }
        }
 private void BaseSetValueLoad()
 {
     azBaseSet = AzNormalSet.GetAzNormalSet().AzBase;// AzBaseSet.GetBaseSet();
     textAzClassPrefix.Text         = azBaseSet.AzClassPrefix;
     textAzDbSqlConnectionName.Text = azBaseSet.AzDbSqlConnectionName;
     textAzNick.Text             = azBaseSet.AzNick;
     textAzProjectName.Text      = azBaseSet.AzProjectName;
     textAzProjectSpace.Text     = azBaseSet.AzProjectSpace;
     textAzTablePrefix.Text      = azBaseSet.AzTablePrefix;
     textAzTemplateFolder.Text   = azBaseSet.AzTemplateFolder;
     textAzToolTable.Text        = azBaseSet.AzToolTable;
     textSaveCodeFileFloder.Text = azBaseSet.AzSaveCodeFileFloder;
 }
示例#8
0
        private void azCdgnDBSchema1_Load(object sender, EventArgs e)
        {
            if (DesignMode)
            {
                return;
            }
            if (string.Compare(System.Diagnostics.Process.GetCurrentProcess().ProcessName, "devenv") == 0)
            {
                return;
            }

            azCdgnMasterDisplay1.SetAzSaveCodeFileFloder(AzNormalSet.GetAzNormalSet().AzBase.AzSaveCodeFileFloder);
        }
示例#9
0
        public static List <string> GetDBList()
        {
            string dbConnectionString = AzNormalSet.GetAzNormalSet().AzConnectionString;

            using (SqlConnection cn = new SqlConnection(dbConnectionString))
            {
                cn.Open();
                List <string> list = new List <string>();
                DataTable     allTablesSchemaTable = cn.GetSchema("Tables");
                list = ShowDataTableName(allTablesSchemaTable);
                DataTable allViewSchemaTable = cn.GetSchema("Views");
                list.AddRange(ShowDataTableName(allViewSchemaTable));
                return(list);
            }
        }
        public void ClearMasterInfo()
        {
            if (GeneralHelpler.ConfirmQuestionOperate("确定清除当前主信息吗?") == DialogResult.Cancel)
            {
                return;
            }
            azClassCreatProperty               = new AzClassCreatProperty();
            azClassCreatProperty.ClassName     = azMetaTable.ClassName.Replace(' ', '_');
            azClassCreatProperty.DisplayName   = azMetaTable.ClassDisPlay;
            azClassCreatProperty.CurrentSelect = azMetaTable.SchemaName;
            azClassCreatProperty.NameSpace     = AzNormalSet.GetAzNormalSet().AzBase.AzProjectSpace;
            azClassCreatProperty.ProjectName   = AzNormalSet.GetAzNormalSet().AzBase.AzProjectName;
            azClassCreatProperty.Nick          = AzNormalSet.GetAzNormalSet().AzBase.AzNick;
            propertyGrid1.SelectedObject       = azClassCreatProperty;

            SaveMasterInfo();
        }
示例#11
0
        public static DataTable LookDbData(string tableName, int top = 100)
        {
            string dbConnectionString = AzNormalSet.GetAzNormalSet().AzConnectionString;
            string querystr           = $"select top {top} *  from [{tableName}] ";

            using (SqlConnection cn = new SqlConnection(dbConnectionString))
            {
                cn.Open();

                using (SqlCommand cmd = new SqlCommand(querystr, cn))
                {
                    SqlDataReader dataReader = cmd.ExecuteReader();
                    DataTable     dataTable  = new DataTable();
                    dataTable.Load(dataReader);
                    return(dataTable);
                }
            }
        }
示例#12
0
        /// <summary>
        /// 数据表是否存在
        /// </summary>
        /// <param name="tableName">表名</param>
        /// <returns></returns>
        public static bool DbTableNameExist(string tableName)
        {
            string dbConnectionString = AzNormalSet.GetAzNormalSet().AzConnectionString;

            using (SqlConnection cn = new SqlConnection(dbConnectionString))
            {
                cn.Open();
                DataTable allSchemaTable = cn.GetSchema("Tables");

                DataTable allSchemaView = cn.GetSchema("Views");

                bool tablesCount = (from d in allSchemaTable.AsEnumerable()
                                    where d.Field <string>("TABLE_NAME") == tableName
                                    select d.Field <string>("TABLE_NAME")).Count <string>() > 0;
                bool viewsCount = (from d in allSchemaView.AsEnumerable()
                                   where d.Field <string>("TABLE_NAME") == tableName
                                   select d.Field <string>("TABLE_NAME")).Count <string>() > 0;
                return(tablesCount || viewsCount);
            }
        }
        private void SaveMasterInfo()
        {
            JavaScriptSerializer js = new JavaScriptSerializer();

            if (string.IsNullOrWhiteSpace(azClassCreatProperty.ObjPresentation.UpdateTableName))
            {
                azClassCreatProperty.ObjPresentation.UpdateTableName = azMetaTable.SchemaName;
            }
            azMetaTable.CodeSetVales = js.Serialize(azClassCreatProperty);
            if (azMetaTable.ComeFrom == 1)
            {
                azMetaTable.ObjModeType = 1;
                azMetaTable.AppName     = MetadataOperate.GetDefAppNameUpdate(AzNormalSet.GetAzNormalSet().AzBase.AzTablePrefix);
                azMetaTable             = AzMetaTableHandle.Handle().Insert(azMetaTable);
                return;
            }
            AzMetaTableHandle.Handle().Updata(azMetaTable);
            SetSelectedObject(azMetaTable);
            OnMasterSaveNotification?.Invoke();
        }
示例#14
0
        private void ACM_Save_Click(object sender, EventArgs e)
        {
            if (VerificationText())
            {
                return;
            }

            AzBaseSet azBaseSetedit = AzNormalSet.GetAzNormalSet().AzBase;

            azBaseSetedit.AzClassPrefix         = textAzClassPrefix.Text;
            azBaseSetedit.AzDbSqlConnectionName = textAzDbSqlConnectionName.Text;
            azBaseSetedit.AzNick               = textAzNick.Text;
            azBaseSetedit.AzProjectName        = textAzProjectName.Text;
            azBaseSetedit.AzProjectSpace       = textAzProjectSpace.Text;
            azBaseSetedit.AzTablePrefix        = textAzTablePrefix.Text;
            azBaseSetedit.AzTemplateFolder     = textAzTemplateFolder.Text;
            azBaseSetedit.AzToolTable          = textAzToolTable.Text;
            azBaseSetedit.AzSaveCodeFileFloder = textSaveCodeFileFloder.Text;
            AzBaseSet.AzSetBase(azBaseSetedit);
            GeneralHelpler.SomethingDoSuccess();
        }
示例#15
0
        public static string ReplacContext(string codeStr, AzMetaTableEntity azMetaTable)
        {
            var aznormalset = AzNormalSet.GetAzNormalSet();
            var azbase      = aznormalset.AzBase;

            codeStr = codeStr.ReaplaceTemplateForWord("Ai_Project_NameSpace", azbase.AzProjectSpace)
                      .ReaplaceTemplateForWord("Ai_Project_UI_FullNameSpace", azbase.AzProjectSpace + @".WebUI")
                      .ReaplaceTemplateForWord("Ai_Bll_ClassName", azMetaTable.ClassName)
                      .ReaplaceTemplateForWord("Ai_Bll_Edit_ClassName", azMetaTable.ClassName)
                      .ReaplaceTemplateForWord("Ai_Object_ChineseName", string.IsNullOrWhiteSpace(azMetaTable.ClassDisPlay) ? azMetaTable.ClassName : azMetaTable.ClassDisPlay)
                      .ReaplaceTemplateForWord("Ai_Bll_List_ClassName", azMetaTable.ClassName + "List")
                      .ReaplaceTemplateForWord("Ai_ProjectName", azbase.AzProjectName)
                      .ReaplaceTemplateForWord("Ai_SqlDB_ConnectionString", azMetaTable.ClassName + "List")
                      .ReaplaceTemplateForWord("Ai_Bll_List_ClassName", azMetaTable.ClassName + "List")
                      .ReaplaceTemplateForWord("Ai_Bll_List_ClassName", azMetaTable.ClassName + "List")
                      .ReaplaceTemplateForWord("Ai_Bll_List_ClassName", azMetaTable.ClassName + "List")
                      .ReaplaceTemplateForWord("Ai_Bll_List_ClassName", azMetaTable.ClassName + "List");



            return(codeStr);
        }
        public void SetSelectedObject(AzMetaTableEntity azMetaTableEntity = null)
        {
            azMetaTable = azMetaTableEntity;
            if (azMetaTableEntity == null)
            {
                AzNodeLevel0Property azNodeLevel0Property = new AzNodeLevel0Property
                {
                    NameSpace   = AzNormalSet.GetAzNormalSet().AzBase.AzProjectSpace,
                    ProjectName = AzNormalSet.GetAzNormalSet().AzBase.AzProjectName,
                    Nick        = AzNormalSet.GetAzNormalSet().AzBase.AzNick
                };
                toolStripButton1.Enabled     = false;
                propertyGrid1.SelectedObject = azNodeLevel0Property;
                azClassCreatProperty         = null;
            }
            else
            {
                toolStripButton1.Enabled = true;
                azClassCreatProperty     = GetItemClassCreatProperty(azMetaTableEntity);// new AzClassCreatProperty();

                SetClassCreatPropertyTrue();
                if (azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_tables ||
                    azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_customTables)
                {
                    List <string> listp = new List <string> {
                        "HasBussniesJson", "HasBigText", "HasExec", "HasSpClass"
                    };
                    PropertyHelper.AddAttribute(typeof(AzClassCreatProperty), listp, BrowsableFalse);
                    List <string> listfalseObj = new List <string> {
                        "IsSchemaForOther", "UpdateTableName", "StoreProcedureQuery"
                    };
                    PropertyHelper.AddAttribute(typeof(ObjDataPresentation), listfalseObj, BrowsableFalse);
                    //PropertyHelper.AddAttribute(typeof(SpecialitySet), "BigText", BrowsableFalse);
                    PropertyHelper.AddAttribute(typeof(ObjDataPresentation), "ObjDataType", ReadOnlyTrue);
                }
                else

                if (azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_views ||
                    azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_customViews)
                {
                    List <string> listp = new List <string> {
                        "HasBussniesJson", "HasBigText", "HasExec", "HasSpClass"
                    };
                    PropertyHelper.AddAttribute(typeof(AzClassCreatProperty), listp, BrowsableFalse);
                    List <string> listfalseObj = new List <string> {
                        "StoreProcedureQuery"
                    };
                    if (azClassCreatProperty.ObjPresentation.IsSchemaForOther)
                    {
                        listfalseObj = new List <string> {
                            "UpdateTableName", "StoreProcedureQuery"
                        };
                    }

                    PropertyHelper.AddAttribute(typeof(ObjDataPresentation), listfalseObj, BrowsableFalse);
                    PropertyHelper.AddAttribute(typeof(ObjDataPresentation), "UpdateTableName", ReadOnlyFalse);
                    PropertyHelper.AddAttribute(typeof(SpecialitySet), "BigText", BrowsableFalse);
                }
                else

                if (azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_FuncstoredProcedure)
                {
                    List <string> listp = new List <string> {
                        "HasBussniesJson", "HasBigText", "HasViewDetail",
                        "HasViewEdit", "HasViewDelete", "HasViewAdd", "HasControllerAsynPage", "HasSpClass",
                        "HasControllerList", "HasControllerDetail", "HasControllerEdit", "HasControllerDelete",
                        "HasControllerAdd", "HasDtoConstruction", "HasBussniesList", "HasBussniesDetail",
                        "HasBussniesEdit", "HasBussniesDelete", "HasBussniesAdd"
                    };
                    PropertyHelper.AddAttribute(typeof(AzClassCreatProperty), listp, BrowsableFalse);

                    List <string> listfalseObj = new List <string> {
                        "IsSchemaForOther", "UpdateTableName"
                    };
                    PropertyHelper.AddAttribute(typeof(ObjDataPresentation), listfalseObj, BrowsableFalse);

                    PropertyHelper.AddAttribute(typeof(ObjDataPresentation), "UpdateTableName", ReadOnlyFalse);
                    PropertyHelper.AddAttribute(typeof(SpecialitySet), "BigText", BrowsableFalse);
                }
                else if (azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_QuerystoredProcedure)
                {
                    List <string> listp = new List <string> {
                        "HasBussniesJson", "HasBigText", "HasViewDetail",
                        "HasViewEdit", "HasViewDelete", "HasViewAdd", "HasExec",
                        "HasControllerDetail", "HasControllerEdit", "HasControllerDelete",
                        "HasControllerAdd", "HasDtoConstruction", "HasBussniesDetail",
                        "HasBussniesEdit", "HasBussniesDelete", "HasBussniesAdd", "HasControllerAsynPage"
                    };
                    PropertyHelper.AddAttribute(typeof(AzClassCreatProperty), listp, BrowsableFalse);

                    List <string> listfalseObj = new List <string> {
                        "IsSchemaForOther", "UpdateTableName"
                    };
                    PropertyHelper.AddAttribute(typeof(ObjDataPresentation), listfalseObj, BrowsableFalse);

                    PropertyHelper.AddAttribute(typeof(ObjDataPresentation), "UpdateTableName", ReadOnlyFalse);
                    PropertyHelper.AddAttribute(typeof(SpecialitySet), "BigText", BrowsableFalse);
                }


                propertyGrid1.SelectedObject = azClassCreatProperty;
                propertyGrid1.ExpandAllGridItems();
            }
        }
        public static AzClassCreatProperty GetItemClassCreatProperty(AzMetaTableEntity azMetaTableEntity)
        {
            AzClassCreatProperty azClassCreatProperty = new AzClassCreatProperty();

            if (!string.IsNullOrWhiteSpace(azMetaTableEntity.CodeSetVales))
            {
                JavaScriptSerializer js = new JavaScriptSerializer();
                azClassCreatProperty = js.Deserialize <AzClassCreatProperty>(azMetaTableEntity.CodeSetVales);
            }
            azClassCreatProperty.ClassName     = azMetaTableEntity.ClassName.Replace(' ', '_');
            azClassCreatProperty.DisplayName   = azMetaTableEntity.ClassDisPlay;
            azClassCreatProperty.CurrentSelect = azMetaTableEntity.SchemaName;
            azClassCreatProperty.NameSpace     = AzNormalSet.GetAzNormalSet().AzBase.AzProjectSpace;
            azClassCreatProperty.ProjectName   = AzNormalSet.GetAzNormalSet().AzBase.AzProjectName;
            azClassCreatProperty.Nick          = AzNormalSet.GetAzNormalSet().AzBase.AzNick;

            if (azMetaTableEntity.ObjModeType == 1)
            {
                switch (azMetaTableEntity.ObjDataType)
                {
                case 1:
                    azClassCreatProperty.ObjPresentation.ObjDataType = ObjDataTypeEnum.atk_tables;
                    break;

                case 2:
                    azClassCreatProperty.ObjPresentation.ObjDataType = ObjDataTypeEnum.atk_views;
                    break;

                case 3:
                    if (string.IsNullOrWhiteSpace(azClassCreatProperty.ObjPresentation.StoreProcedureQuery))
                    {
                        azClassCreatProperty.ObjPresentation.ObjDataType = ObjDataTypeEnum.atk_FuncstoredProcedure;
                    }
                    else
                    {
                        azClassCreatProperty.ObjPresentation.ObjDataType = ObjDataTypeEnum.atk_QuerystoredProcedure;
                    }

                    break;
                }
            }
            else
            {
                switch (azMetaTableEntity.ObjDataType)
                {
                case 1:
                    azClassCreatProperty.ObjPresentation.ObjDataType = ObjDataTypeEnum.atk_customTables;
                    break;

                case 2:
                    azClassCreatProperty.ObjPresentation.ObjDataType = ObjDataTypeEnum.atk_customViews;
                    break;
                }
            }
            //确保IsSchemaForOther设置正确
            if (azClassCreatProperty.ObjPresentation.IsSchemaForOther)
            {
                if (!(azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_views ||
                      azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_customViews))
                {
                    azClassCreatProperty.ObjPresentation.IsSchemaForOther = false;
                }
            }

            if (azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_tables ||
                azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_customTables)
            {
                azClassCreatProperty.HasBussniesJson = false;
                azClassCreatProperty.HasBigText      = false;
                azClassCreatProperty.HasExec         = false;
                azClassCreatProperty.HasSpClass      = false;
                azClassCreatProperty.ObjPresentation.IsSchemaForOther    = false;
                azClassCreatProperty.ObjPresentation.UpdateTableName     = "";
                azClassCreatProperty.ObjPresentation.StoreProcedureQuery = "";
            }
            else

            if (azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_views ||
                azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_customViews)
            {
                azClassCreatProperty.HasBussniesJson = false;
                azClassCreatProperty.HasBigText      = false;
                azClassCreatProperty.HasExec         = false;
                azClassCreatProperty.HasSpClass      = false;
                if (azClassCreatProperty.ObjPresentation.IsSchemaForOther)
                {
                    azClassCreatProperty.ObjPresentation.UpdateTableName = "";
                }
            }
            else if (azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_FuncstoredProcedure)
            {
                azClassCreatProperty.HasBussniesJson       = false;
                azClassCreatProperty.HasBigText            = false;
                azClassCreatProperty.HasViewDetail         = false;
                azClassCreatProperty.HasViewEdit           = false;
                azClassCreatProperty.HasViewDelete         = false;
                azClassCreatProperty.HasViewAdd            = false;
                azClassCreatProperty.HasControllerAsynPage = false;
                azClassCreatProperty.HasControllerList     = false;
                azClassCreatProperty.HasControllerDetail   = false;
                azClassCreatProperty.HasControllerEdit     = false;
                azClassCreatProperty.HasControllerDelete   = false;
                azClassCreatProperty.HasControllerAdd      = false;
                azClassCreatProperty.HasControllerDelete   = false;
                azClassCreatProperty.HasDtoConstruction    = false;
                azClassCreatProperty.HasBussniesDetail     = false;
                azClassCreatProperty.HasBussniesEdit       = false;
                azClassCreatProperty.HasBussniesDelete     = false;
                azClassCreatProperty.HasBussniesAdd        = false;

                azClassCreatProperty.ObjPresentation.IsSchemaForOther = false;
                azClassCreatProperty.ObjPresentation.UpdateTableName  = "";
            }
            else if (azClassCreatProperty.ObjPresentation.ObjDataType == ObjDataTypeEnum.atk_QuerystoredProcedure)
            {
                azClassCreatProperty.HasBussniesJson                  = false;
                azClassCreatProperty.HasBigText                       = false;
                azClassCreatProperty.HasViewDetail                    = false;
                azClassCreatProperty.HasViewEdit                      = false;
                azClassCreatProperty.HasViewDelete                    = false;
                azClassCreatProperty.HasViewAdd                       = false;
                azClassCreatProperty.HasExec                          = false;
                azClassCreatProperty.HasControllerDetail              = false;
                azClassCreatProperty.HasControllerEdit                = false;
                azClassCreatProperty.HasControllerDelete              = false;
                azClassCreatProperty.HasControllerAdd                 = false;
                azClassCreatProperty.HasControllerDelete              = false;
                azClassCreatProperty.HasDtoConstruction               = false;
                azClassCreatProperty.HasBussniesDetail                = false;
                azClassCreatProperty.HasBussniesEdit                  = false;
                azClassCreatProperty.HasBussniesDelete                = false;
                azClassCreatProperty.HasBussniesAdd                   = false;
                azClassCreatProperty.HasControllerAsynPage            = false;
                azClassCreatProperty.ObjPresentation.IsSchemaForOther = false;
                azClassCreatProperty.ObjPresentation.UpdateTableName  = "";
            }

            azClassCreatProperty.ObjPresentation.UpdateTableName = azMetaTableEntity.SchemaName;
            return(azClassCreatProperty);
        }
示例#18
0
 protected AtkHandle()
 {
     azNormalSet = AzNormalSet.GetAzNormalSet();
     repository  = RepoFactory.Create <TEntity>();
 }
示例#19
0
        public static string CreateDBObject(AzMetaTableEntity azMetaTable, IEnumerable <AzMetaCustomCloumEntity> azCloumListEntity)
        {
            if (azMetaTable == null)
            {
                throw new Exception(" 元数主表类为null,不能生成!");
            }
            if (azCloumListEntity == null)
            {
                throw new Exception(" 元数属性null,不能生成!");
            }
            string createSql     = $" CREATE TABLE [dbo].[{azMetaTable.SchemaName}](";
            string identitySql   = " [{0}] [{1}]  IDENTITY(1,1) NOT NULL,";
            string normalSql     = " [{0}] [{1}] {2},";
            string haveLenSql    = " [{0}] [{1}] ({2}) {3},";
            string constraintSql = " CONSTRAINT [PK_{0}] PRIMARY KEY CLUSTERED({1})) ON [PRIMARY]";

            string nullstr = "";
            string keyid   = "";
            string tempstr = "";
            int    idCount = 0;

            StringBuilder stringBuilder = new StringBuilder();

            stringBuilder.Append(createSql);

            foreach (var item in azCloumListEntity)
            {
                nullstr = item.IsNullable ?? true ? " Not NULL" : " NULL";

                if (item.IsKeyField ?? true)

                {
                    keyid = (string.IsNullOrWhiteSpace(keyid)) ? keyid = $" {item.FldName} ASC" : $"{keyid},{item.FldName} ASC";
                }

                if (item.FldType.ToLower().Contains("char"))
                {
                    tempstr = string.Format(haveLenSql, item.FldName, item.FldType, item.FldLen, nullstr);
                }
                else
                {
                    if (item.IsIdentity ?? true)
                    {
                        tempstr  = string.Format(identitySql, item.FldName, item.FldType);
                        idCount += 1;
                        if (idCount > 1)
                        {
                            throw new Exception(string.Format(" '{0}'有多个自增字段,不能生成!", azMetaTable.ClassName));
                        }
                    }
                    else
                    {
                        tempstr = string.Format(normalSql, item.FldName, item.FldType, nullstr);
                    }
                }
                stringBuilder.Append(tempstr);
            }

            if (string.IsNullOrWhiteSpace(keyid))
            {
                throw new Exception(string.Format(" '{0}'没有设置关键字段,不能生成!", azMetaTable.ClassName));
            }
            tempstr = string.Format(constraintSql, azMetaTable.SchemaName, keyid);
            stringBuilder.Append(tempstr);
            stringBuilder.Append($"; UPDATE [dbo].[{AzNormalSet.GetAzNormalSet().AzMetaCloumName}] SET TpyeId=1 where TableName='{azMetaTable.SchemaName}'");

            return(stringBuilder.ToString());
        }