private void OnConnectionStatus_callback(object sender, XAPI.ConnectionStatus status, ref RspUserLoginField userLogin, int size1) { RspUserLoginClass cls = null; if (size1 > 0) { cls = new RspUserLoginClass(); RspUserLoginField field = userLogin; cls.TradingDay = field.TradingDay; cls.LoginTime = field.LoginTime; cls.SessionID = field.SessionID; cls.UserID = field.UserID; cls.AccountID = field.AccountID; cls.InvestorName = field.InvestorName(); cls.XErrorID = field.XErrorID; cls.RawErrorID = field.RawErrorID; cls.Text = field.Text(); } if (null == OnConnectionStatus) { QueueData qd = new QueueData(); qd.Type = (int)ResponeType.OnConnectionStatus; qd.Type_String = Enum <XAPI.ResponeType> .ToString(ResponeType.OnConnectionStatus); qd.Sender = this; qd.Data1 = status; qd.Data2 = Enum <XAPI.ConnectionStatus> .ToString(status); qd.Data3 = cls; qd.Data4 = size1; MessageQueue.Enqueue(qd); } else { OnConnectionStatus(this, (int)status, Enum <XAPI.ConnectionStatus> .ToString(status), ref cls, size1); } }
private void OnConnectionStatus_callback(object sender, XAPI.ConnectionStatus status, ref RspUserLoginField userLogin, int size1) { RspUserLoginClass cls = null; if (size1 > 0) { cls = new RspUserLoginClass(); RspUserLoginField field = userLogin; cls.TradingDay = field.TradingDay; cls.LoginTime = field.LoginTime; cls.SessionID = field.SessionID; cls.UserID = field.UserID; cls.AccountID = field.AccountID; cls.InvestorName = field.InvestorName(); cls.XErrorID = field.XErrorID; cls.RawErrorID = field.RawErrorID; cls.Text = field.Text(); } if (null == OnConnectionStatus) { QueueData qd = new QueueData(); qd.Type = (int)ResponeType.OnConnectionStatus; qd.Type_String = Enum<XAPI.ResponeType>.ToString(ResponeType.OnConnectionStatus); qd.Sender = this; qd.Data1 = status; qd.Data2 = Enum<XAPI.ConnectionStatus>.ToString(status); qd.Data3 = cls; qd.Data4 = size1; MessageQueue.Enqueue(qd); } else { OnConnectionStatus(this, (int)status, Enum<XAPI.ConnectionStatus>.ToString(status), ref cls, size1); } }