/// <summary> /// 根据传感器协议码号生产传感器实例 /// </summary> /// <param name="dr">配置表项</param> /// <returns></returns> private Sensor CreatSensor(DataRow dr) { int protocolType = Convert.ToInt32(dr["PROTOCOL_CODE"]); string obj = ProtocolFactory.getInstance().GetSensorType(protocolType); try { object[] para = new object[1]; para[0] = dr; object r = Assembly.GetExecutingAssembly().CreateInstance(obj, true, BindingFlags.Default, null, para /*args*/, null, null); return((Sensor)r); } catch (Exception ex) { _logger.Error(string.Format("传感器配置信息读取有误! SensorId={0} ", dr["SENSOR_ID"].ToString()) + ex.Message); return(null); } }