/// <summary> /// 获取分系统及其菜单完成事件到本地数据库 /// </summary> /// <param name="strUserID"></param> public void GetModulesByLocal(string strUserID) { List <ModuleInfo> moduleinfo = new List <ModuleInfo>(); List <V_ModuleInfo> vLocalModules = V_ModuleInfoVM.GetAllV_ModuleInfo(strUserID); List <V_ModuleInfo_DependsOn> vLocalModuleDependsOns = V_ModuleInfo_DependsOnVM.GetAllV_ModuleInfo_DependsOn(strUserID); List <V_ModuleInfo_Params> vLocalModuleParams = V_ModuleInfo_ParamsVM.GetAllV_ModuleInfo_Params(strUserID); foreach (var item in vLocalModules) { if (item.ModuleName != null) { ModuleInfo info = item.CloneObject <ModuleInfo>(new ModuleInfo()); info.InitializationMode = item.UseState == "1" ? InitializationMode.OnDemand : InitializationMode.OnDemand; info.Ref = string.Empty; info.IsOnWeb = false; info.ModuleType = item.UseState == "1" ? string.Empty : item.ModuleType; List <string> listDepends = new List <string>(); foreach (var p in vLocalModuleDependsOns) { if (p.UserModuleID != item.UserModuleID) { continue; } info.DependsOn.Add(p.ModuleName); } foreach (var d in vLocalModuleParams) { if (info.InitParams == null) { info.InitParams = new Dictionary <string, string>(); } if (d.UserModuleID != item.UserModuleID) { continue; } info.InitParams.Add(d.ParamKey, d.ParamValue); } moduleinfo.Add(info); } } InitMainContext(moduleinfo); if (this.InitCompleted != null) { this.InitCompleted(this, EventArgs.Empty); } }