public bool Write(List <DeviceDefinitionData> definitions) { if (definitions.IsNullOrEmpty <DeviceDefinitionData>()) { return(false); } string str = "`device_id`, `agent_instance_id`, `id`, `uuid`, `name`, `native_name`, `sample_interval`, `sample_rate`, `iso_841_class`, `manufacturer`, `model`, `serial_number`, `station`, `description`"; string format = "INSERT IGNORE INTO `devices` ({0}) VALUES {1}"; string str3 = "('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}')"; string[] strArray = new string[definitions.Count]; for (int i = 0; i < definitions.Count; i++) { DeviceDefinitionData data = definitions[i]; strArray[i] = string.Format(str3, new object[] { this.EscapeString(data.DeviceId), data.AgentInstanceId, this.EscapeString(data.Id), this.EscapeString(data.Uuid), this.EscapeString(data.Name), this.EscapeString(data.NativeName), data.SampleInterval, data.SampleRate, this.EscapeString(data.Iso841Class), this.EscapeString(data.Manufacturer), this.EscapeString(data.Model), this.EscapeString(data.SerialNumber), this.EscapeString(data.Station), this.EscapeString(data.Description) }); } string str4 = string.Join(",", strArray); string query = string.Format(format, str, str4); return(this.Write(query)); }
private static DeviceDefinitionData Create(string deviceId, long agentInstanceId, MTConnectDevices.Device device) { var obj = new DeviceDefinitionData(); obj.DeviceId = deviceId; // MTConnect Properties obj.AgentInstanceId = agentInstanceId; obj.Id = device.Id; obj.Uuid = device.Uuid; obj.Name = device.Name; obj.NativeName = device.NativeName; obj.SampleInterval = device.SampleInterval; obj.SampleRate = device.SampleRate; obj.Iso841Class = device.Iso841Class; if (device.Description != null) { obj.Manufacturer = device.Description.Manufacturer; obj.Model = device.Description.Model; obj.SerialNumber = device.Description.SerialNumber; obj.Station = device.Description.Station; obj.Description = device.Description.CDATA; } return(obj); }
private void DeviceDefinitionReceived(DeviceDefinitionData definition) { // Send to DataServers foreach (var dataServer in Configuration.DataServers) { dataServer.Add(definition); } }
/// <summary> /// DeviceDefinitionsReceived的事件处理函数 /// </summary> /// <param name="definition"></param> private void DeviceDefinitionReceived(DeviceDefinitionData definition) { //Send to DatabaseQueue Queue.Add(GetSendList(definition)); }