private static void CreateControlByTable(DCreateControl dc, EnvDTE.Project pjt, List <SQLTableInfo> dbix, string item, string ctlname) { tablenamenow = item; Common.ShowInfo(string.Format("正在生成{0}的控件,请稍候...", tablenamenow)); Predicate <SQLTableInfo> pdbi = new Predicate <SQLTableInfo>(FindByTableName); List <SQLTableInfo> lstdb = dbix.FindAll(pdbi); WinFormBaseGengerator mg; try { mg = new WinFormBaseGengerator(pjt, "ctl_" + ctlname + "_Keel", lstdb); mg.CreateControl = dc; bool genok = mg.GenForm(); if (genok) { Common.ShowInfo(string.Format("{0}成功生成,正在保存...", tablenamenow)); } else { Common.ShowInfo(string.Format("抱歉!{0}的控件生成失败!", tablenamenow)); } if (mg.SaveForm()) { Common.ShowInfo(string.Format("恭喜!{0}的控件保存完毕!", tablenamenow)); } else { Common.ShowInfo(string.Format("抱歉!{0}的控件保存失败!", tablenamenow)); } } catch (Exception ex) { Common.ShowInfo(string.Format("抱歉!{0}的控件生成失败!由于发生了异常:{1}", tablenamenow, ex.Message)); } }
public static void GeneratedCode(DCreateControl dc, string fieldlist, string tablename) { Common.ShowInfo("正在检查数据库是否可用!"); if (Kit.CheckDataBase()) { Common.ShowInfo("正在从数据库中读取表信息..."); EnvDTE.Project pjt = Kit.GetProjectComponent(); List <SQLTableInfo> dbix = ModelGengerator.GetSqlTableInfoList(); SQLTableInfo[] dbix_111 = dbix.ToArray(); if (fieldlist != null && fieldlist != "" && tablename != null && tablename != "") { var xf = from f in dbix_111 where f.t_tablename.ToLower() == tablename.ToLower() && fieldlist.Contains(f.t_fieldname + ";") select f; dbix = xf.ToList(); } string[] lsttab = ((tablename != null) ? tablename + ";" : (Kit.SlnKeel.DataTableForms + Kit.SlnKeel.DataViewForms)).Split(";".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); foreach (var item in lsttab) { CreateControlByTable(dc, pjt, dbix, item, item + (fieldlist != null ? "_diy_" + fieldlist.Replace(";", "") : "")); } Common.chExc("SaveAll", ""); Common.ShowInfo(string.Format("全部控件生成完毕!")); } }
public static void GeneratedCode(DCreateControl dc) { GeneratedCode(dc, null, null); }