From 341638ff32ba881fb78c134353c76ba7a012f1c1 Mon Sep 17 00:00:00 2001 From: parallelbgls Date: Tue, 28 Feb 2017 10:44:35 +0800 Subject: [PATCH] =?UTF-8?q?2917-02-28=20Update=201=20Add=20Name=20Mode?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Modbus.Net/Modbus.Net/BaseMachine.cs | 24 ++++++++++++++++++++++-- Modbus.Net/Modbus.Net/TaskManager.cs | 9 ++++++++- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/Modbus.Net/Modbus.Net/BaseMachine.cs b/Modbus.Net/Modbus.Net/BaseMachine.cs index e5203ce..b730e72 100644 --- a/Modbus.Net/Modbus.Net/BaseMachine.cs +++ b/Modbus.Net/Modbus.Net/BaseMachine.cs @@ -18,7 +18,12 @@ namespace Modbus.Net /// /// 通讯标识 /// - CommunicationTag + CommunicationTag, + + /// + /// 名称 + /// + Name } /// @@ -34,7 +39,12 @@ namespace Modbus.Net /// /// 通讯标识 /// - CommunicationTag + CommunicationTag, + + /// + /// 名称 + /// + Name } public abstract class BaseMachine : IMachineProperty @@ -233,6 +243,11 @@ namespace Modbus.Net key = AddressFormater.FormatAddress(address.Area, address.Address, address.SubAddress); break; } + case MachineGetDataType.Name: + { + key = address.Name; + break; + } default: { key = address.CommunicationTag; @@ -340,6 +355,11 @@ namespace Modbus.Net GetAddresses.SingleOrDefault(p => p.CommunicationTag == value.Key); break; } + case MachineSetDataType.Name: + { + address = GetAddresses.SingleOrDefault(p => p.Name == value.Key); + break; + } } //地址为空报错 if (address == null) diff --git a/Modbus.Net/Modbus.Net/TaskManager.cs b/Modbus.Net/Modbus.Net/TaskManager.cs index b032873..38128a8 100644 --- a/Modbus.Net/Modbus.Net/TaskManager.cs +++ b/Modbus.Net/Modbus.Net/TaskManager.cs @@ -17,7 +17,8 @@ namespace Modbus.Net public enum MachineDataType { Address, - CommunicationTag + CommunicationTag, + Name } /// @@ -348,6 +349,12 @@ namespace Modbus.Net SetDataType = MachineSetDataType.CommunicationTag; break; } + case MachineDataType.Name: + { + GetDataType = MachineGetDataType.Name; + SetDataType = MachineSetDataType.Name; + break; + } } } }