/// <summary> /// 数据类型转换PLC-->WCS /// </summary> /// <param name="type"></param> /// <param name="data"></param> /// <returns></returns> private BllResult <String> TransforAddressDataToWCSData(PLCDataType type, object data) { string str; try { switch (type) { case PLCDataType.BYTE: int i = Convert.ToInt32(data); str = i.ToString(); break; case PLCDataType.BOOL: case PLCDataType.DWORD: case PLCDataType.WORD: case PLCDataType.INT: case PLCDataType.DINT: str = data.ToString(); break; case PLCDataType.CHAR: str = ConverHelper.ASCIIToString((short[])data).Trim().Replace("$03", "").Replace("\u0003", "").Replace("\0", ""); break; default: str = data.ToString(); break; } return(BllResultFactory <string> .Sucess(str, "成功")); } catch (Exception ex) { return(BllResultFactory <string> .Error(null, "PLC到WCS数据转换出现异常,值:" + data + " 目标类型:" + type + " 异常:" + ex.ToString())); } }