c# JsonStr转object、object转jsonStr

//jsonStr转object
//接受数据

[Serializable]
public class JsonLaser
{
    public string EqpIp;
    public string EqpType;
    public string EqpID;
    public string Function;
    public string Event_time;
    public int MoldNum;
    public List<QrCode> QrCodeList;
    public bool Result;
    public string Message;
}
  public void OnMessage(object sender, EventArgs e)
    {
        string _T = ((WebSocketSharp.MessageEventArgs)e).Data;
        Common.CommonLog(BASEComm.UniNLog.LogLevel.Info, "> [WebSocket Client Recieve Data] -> Receive Data: " + _T + "\r\nData Length: " + _T.Length.ToString() + "\n\n");

        if (!string.IsNullOrEmpty(_T))
        {
            try
            {
                string _content = _T.TrimEnd(DefineEnd); //删除最后传输结束符
                JsonLaser _obj = JsonConvert.DeserializeObject<JsonLaser>(_content);

                //Send QR code 给BC
                if (_obj.Function.ToUpper() == "S02")
                {
                    this.QrCodeCheck(_obj);
                }
                // 镭雕二维码 并把扫码结果返回给BC 
                if (_obj.Function.ToUpper() == "S03")
                {
                    this._ReturnScanQRCode(_obj);
                }
            }
            catch(Exception ex)
            {
                Common.CommonLog(BASEComm.UniNLog.LogLevel.Error, " > [OnMessage JsonConvert.DeserializeObject  ERR] -> " + ex.Message);
            }
        }
    }
    #endregion

// object 转jsonStr

 #region  手动测试EQP TO BC
        public void Send(string _T)
        {
            if (!string.IsNullOrEmpty(_T))
            {
                #region 测试发送data 至 WebSocket Server
                //SerializeObject
                JsonLaser jsonObj = new JsonLaser();
                jsonObj.EqpIp = Dns.GetHostEntry(Dns.GetHostName()).AddressList.First(o => o.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork).ToString();
                jsonObj.EqpType = "LASER";
                jsonObj.EqpID = "LASER_01";
                jsonObj.Function = "C02";
                jsonObj.Event_time = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
                jsonObj.Result = true;
                jsonObj.Message = "EQP test program send by manual";

                List<QrCode> QrCodeList = new List<QrCode>();
                QrCode _QrCode = new QrCode();
                _QrCode.id = 1;
                _QrCode.QrCodeStr = "A01_0001_01_20190417110200000";
                QrCodeList.Add(_QrCode);
                //--------------------------------------------------------
                _QrCode = new QrCode();
                _QrCode.id = 2;
                _QrCode.QrCodeStr = "A01_0001_02_20190417110200000";
                QrCodeList.Add(_QrCode);

                //--------------------------------------------------------
                _QrCode = new QrCode();
                _QrCode.id = 3;
                _QrCode.QrCodeStr = "A01_0001_03_20190417110200000";
                QrCodeList.Add(_QrCode);
                //--------------------------------------------------------
                _QrCode = new QrCode();
                _QrCode.id = 4;
                _QrCode.QrCodeStr = "A01_0001_04_20190417110200000";
                QrCodeList.Add(_QrCode);

                jsonObj.QrCodeList = QrCodeList;
                
                #endregion

                string jsonStr = JsonConvert.SerializeObject(jsonObj);

                Common.AddToBCBuffer(jsonStr);
            }
        }
        #endregion
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Seven Li

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值