Example #1
0
        public List <PropertyModel> getPropertyList(DbContextEx db, ObjectModel obj)
        {
            PropertyItem exeCode = SourceConfig.GetProperty(db.builder, db);

            List <PropertyModel> popList = null;

            string sql = null;

            if (obj.Type < 3)
            {
                sql = exeCode.Table.Replace("{ID}", obj.ID).Replace("{NAME}", obj.Name);
            }
            else
            {
                sql = exeCode.StoredProcedure.Replace("{ID}", obj.ID).Replace("{NAME}", obj.Name).Trim();

                if (sql[0] == '@')
                {
                    popList = Weed.Addin.Eval <IParamsBuilder>(sql.Substring(1)).GetParams(obj.Name, db);
                }
            }

            if (popList == null)
            {
                popList = db.sql(sql).getList(new PropertyModel());
            }


            return(popList);
        }
Example #2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="dbContext"></param>
 /// <param name="appCode"></param>
 /// <returns></returns>
 public static IEnumerable <Db_AppLink> DbAppLink(this DbContextEx dbContext, string appCode)
 {
     return(dbContext.DbAppLink("SELECT * " +
                                "FROM UT_AppLink " +
                                "WHERE AppCode = @AppCode " +
                                "AND Active = 0 ",
                                new { AppCode = appCode }));
 }
Example #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="dbContext"></param>
 /// <param name="appCode"></param>
 /// <returns></returns>
 public static Db_FApp DbApp(this DbContextEx dbContext, string appCode)
 {
     return(dbContext.DbApp("SELECT * " +
                            "FROM FT_App " +
                            "WHERE AppCode = @AppCode " +
                            "AND IsDelete = 0 ",
                            new { AppCode = appCode }).FirstOrDefault());
 }
Example #4
0
        private void sourceBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            var name = (string)sourceBox.SelectedItem;

            currentSource = DbManager.get(name);
            viewModel.loadObjects(currentSource);

            Setting.set("source", name);
        }
Example #5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="dbContext"></param>
        /// <param name="dynamicSql"></param>
        /// <param name="param"></param>
        /// <returns></returns>
        public static IEnumerable <Db_AppLink> DbAppLink(this DbContextEx dbContext, string dynamicSql, object param = null)
        {
            var dbAppLink = dbContext.Database.Connection.Query <Db_AppLink>(dynamicSql, param);

            if (dbAppLink == null || dbAppLink.Count() == 0)
            {
                throw new Exception("未开通或未激活,不具备调用条件!");
            }
            return(dbAppLink);
        }
Example #6
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="dbContext"></param>
 /// <param name="appCode"></param>
 /// <param name="mode"></param>
 /// <returns></returns>
 public static Db_AppLink DbAppLink(this DbContextEx dbContext, string appCode, string mode)
 {
     return(dbContext.DbAppLink("SELECT * " +
                                "FROM UT_AppLink " +
                                "WHERE AppCode = @AppCode " +
                                "AND Mode = @LinkMode " +
                                "AND Active = 0 ",
                                new
     {
         AppCode = appCode,
         LinkMode = mode
     }).FirstOrDefault());
 }
Example #7
0
        public static ObjectItem GetObject(string name, DbContextEx db)
        {
            ObjectItem temp = new ObjectItem();

            string opsXml = __Config[name]["Object"].OuterText;

            if (opsXml.IndexOf("{db}") > 0)
            {
                opsXml = opsXml.Replace("{db}", db.getSchema());
            }

            XDom.Bind(temp, opsXml);

            return(temp);
        }
Example #8
0
        public void loadPropertys(DbContextEx db, ObjectModel obj)
        {
            PropertyList.Clear();

            if (db == null || obj == null)
            {
                return;
            }

            var popList = getPropertyList(db, obj);

            foreach (var p in popList)
            {
                PropertyList.Add(p);
            }
        }
Example #9
0
        public void loadObjects(DbContextEx db)
        {
            ObjectList.Clear();

            try {
                //1.获取配置里的执行代码
                //
                ObjectItem exeCode = SourceConfig.GetObject(db.builder, db);

                ObjectModel dataTableRoot = new ObjectModel("数据表", 0);
                ObjectModel dataViewRoot  = new ObjectModel("数据视图", 0);
                ObjectModel dataSPRoot    = new ObjectModel("存储过程", 0);

                //2.执行代码,获取数据
                //
                List <ObjectModel> tableList = db.sql(exeCode.Table).getList(new ObjectModel(1));
                List <ObjectModel> viewList  = db.sql(exeCode.View).getList(new ObjectModel(2));
                List <ObjectModel> spList    = db.sql(exeCode.StoredProcedure).getList(new ObjectModel(3));

                //3.绑定到树控件上
                //
                dataTableRoot.AddRange(tableList);
                dataViewRoot.AddRange(viewList);
                dataSPRoot.AddRange(spList);

                if (dataTableRoot.Children.Count > 0)
                {
                    ObjectList.Add(dataTableRoot);
                }

                if (dataViewRoot.Children.Count > 0)
                {
                    ObjectList.Add(dataViewRoot);
                }

                if (dataSPRoot.Children.Count > 0)
                {
                    ObjectList.Add(dataSPRoot);
                }
            } catch (Exception ex) {
            }

            NotifyPropertyChanged("ObjectList");
        }
Example #10
0
        public static PropertyItem GetProperty(string name, DbContextEx db)
        {
            PropertyItem temp = new PropertyItem();

            string opsXml = __Config[name]["Property"].OuterText;

            if (opsXml.IndexOf("{db}") > 0)
            {
                opsXml = opsXml.Replace("{db}", db.getSchema());
            }

            XDom.Bind(temp, opsXml);

            if (temp.View.Trim().IndexOf(" ") < 0)
            {
                temp.View = temp.Table;
            }

            return(temp);
        }
Example #11
0
 public UnitOfWork(DbContextEx context)
 {
     _context = context.db;
 }
Example #12
0
 public Repository(DbContextEx context)
 {
     _context = context.db;
 }
Example #13
0
 public WeedBuilder(DbContextEx db)
 {
     this.db = db;
 }
 /// <summary>
 /// Finds the lockable context in the database and optionally adds it.
 /// </summary>
 /// <param name="db">The database to search in.</param>
 /// <param name="context">The command context to look for.</param>
 /// <param name="add">True if the context should be added if it's missing.</param>
 /// <returns>The context, or null if it does not exist, and <see cref="add"/> is false.</returns>
 public Task <IDbLockableContext> FindDbLockableContextAsync(DbContextEx db, ICommandContext context, bool add)
 {
     return(Task.FromResult <IDbLockableContext>(null));
 }