/********************************************* 监控信息初始化 *********************************************/ public InitMonDevice(string username) { using (Bus.DataBusServiceClient client = new Bus.DataBusServiceClient()) { Bus.UserMonTask usertask = client.QueryUserTask(username); //Bus.DeviceState[] statelist = client.QueryStates("u002"); /********************************************* 需要控制连接失败信息! *********************************************/ GeneratCollection(username); GeneratDevice(usertask); GenerateSate(usertask,client); ThreadScan scanthread = (ThreadScan)Application.Current.Properties["ScanDevice"]; Collection devcollection = (Collection)Application.Current.Properties["MonitorCollection"]; int devcount = devcollection.GetDeviceCount(); if (devcount > 0) { scanthread.ScanTime = devcollection.GetScanTime(); scanthread.threadStart(); } } }
/// <summary> /// 通过远程调用填充数据总线设备实例,包括是否被监控的信息 /// </summary> public void fillDataBusByRemoteService(string userID) { //string userID = Application.Current.Properties["userID"] as string; bus.DataBusServiceClient dBSC = new bus.DataBusServiceClient(); TaskServiceReference.MonAgentInfo[] monAgentInfoArray = null; try { //调用远程服务 monAgentInfoArray = dBSC.QueryMonAgentsDevs(); //刷新设备实例信息 initFromDataContractObj(monAgentInfoArray); //刷新设备监控信息 bus.UserMonTask usertask = dBSC.QueryUserTask(userID); initDevMonStatusFromDataContractObj(usertask); } catch (Exception exp) { throw exp; } finally { if (dBSC != null) dBSC.Close(); } }