Пример #1
0
        public static int ExecuteNoneQuery(AppModule module, SqlCommand sqlcommand, params object[] namevalues)
        {
            var db     = module.OpenConnection();
            var result = DBConn.ExecuteNoneQuery(db, sqlcommand, namevalues);

            db.CloseConnection();
            return(result);
        }
Пример #2
0
        public static IEnumerable <T> ExecuteCommand <T>(AppModule module, SqlCommand sqlcommand, params object[] namevalues) where T : IEntityBase, new()
        {
            var db     = module.OpenConnection();
            var result = DBConn.ExecuteQuery <T>(db, sqlcommand, namevalues).ToList();

            db.CloseConnection();
            return(result);
        }
Пример #3
0
        public static IEnumerable <Table> LoadTables(this AppModule module)
        {
            try
            {
            }
            catch (Exception)
            {
                throw;
            }
            var conn = module.OpenConnection();

            string[] restrictions = new string[4];
            restrictions[3] = "BASE TABLE";
            DataTable stable = conn.GetSchema("Tables", restrictions);

            foreach (DataRow row in stable.Rows)
            {
                Table table = null;
                try
                {
                    string tableName = row[1].ToString().Equals("dbo", StringComparison.OrdinalIgnoreCase) ? row[2].ToString() : string.Format("{0}.{1}", row[1], row[2]);
                    string name      = row[2].ToString();
                    if (module.Filter.Length > 0 && (!name.StartsWith(module.Filter, StringComparison.OrdinalIgnoreCase)))
                    {
                        continue;
                    }
                    table = new Table
                    {
                        Name     = row[2].ToString(),
                        Schema   = row[1].ToString(),
                        CodeName = row[2].ToString().ToFormatedName(),
                        IsFromDB = true
                    };
                    GetColumns(module, row[1].ToString(), row[2].ToString()).AddToCollection(table.Columns);

                    var keycolumns = table.Columns.Where(c => c.IsKey).Select(c => c.Name).ToMergeString(",");
                    table.Key = keycolumns;
                }
                catch (Exception)
                {
                    throw;
                }
                yield return(table);

                conn.CloseConnection();
            }
        }
Пример #4
0
        public static IEnumerable <Column> GetColumns(this AppModule module, string schema, string table)
        {
            IEnumerable <Column> columns = null;
            var conn = module.OpenConnection();

            columns = GetColumns(conn, schema, table, module.SqlBuilder.GetName(table)).ToList();
            conn.CloseConnection();
            foreach (var column in columns)
            {
                var sysColumn = module.SystemColumns.FirstOrDefault(s => s.Name.Equals(column.Name, StringComparison.OrdinalIgnoreCase));
                if (sysColumn != null)
                {
                    column.IsSystem        = true;
                    column.IsReadOnly      = sysColumn.IsReadOnly;
                    column.SystemParameter = sysColumn.SystemParameter;
                }

                yield return(column);
            }
        }