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); }
/// <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 })); }
/// <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()); }
private void sourceBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { var name = (string)sourceBox.SelectedItem; currentSource = DbManager.get(name); viewModel.loadObjects(currentSource); Setting.set("source", name); }
/// <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); }
/// <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()); }
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); }
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); } }
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"); }
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); }
public UnitOfWork(DbContextEx context) { _context = context.db; }
public Repository(DbContextEx context) { _context = context.db; }
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)); }