/******************************************************************************/ public void addOadrMessage(OadrRequest request, bool autoScroll = true) { MethodInvoker mi = new MethodInvoker(delegate { lock (listView1) { ListViewItem lvi = new ListViewItem(DateTime.Now.ToString()); lvi.SubItems.Add(request.responseTime.ToString()); lvi.SubItems.Add(request.requestType); lvi.SubItems.Add(request.responseType); //lvi.SubItems.Add(request.distributeEvent.eiResponse.responseCode.ToString()); //lvi.SubItems.Add(request.distributeEvent.eiResponse.responseDescription); lvi.SubItems.Add(request.eiResponseCode.ToString()); lvi.SubItems.Add(request.eiResponseDescription); listView1.Items.Add(lvi); m_messages.Add(lvi, request); if (autoScroll) { lvi.Selected = true; listView1.EnsureVisible(lvi.Index); } if (listView1.Items.Count > m_maxEntries) { lvi = listView1.Items[0]; m_messages.Remove(lvi); listView1.Items.Remove(lvi); } //insert vào database using (var db = new DataModels.VenDB()) { var newlog = new DataModels.Log(); newlog.Date = DateTime.Now; newlog.ResponseTime = (decimal)request.responseTime; newlog.ResponseType = request.responseType; newlog.RequestType = request.requestType; newlog.ResponseCode = request.eiResponseCode; newlog.ResponseDescription = request.eiResponseDescription; newlog.ResponseXML = request.responseBody; newlog.RequestXML = request.requestBody; newlog.VenID = VenID; newlog.VenName = VenName; newlog.VenNum = VenNum; db.InsertWithIdentity(newlog); } } }); // BeginInvoke only needs to be called if we're tyring to update the UI from // a thread that did not create it if (this.InvokeRequired) { this.BeginInvoke(mi); } else { mi.Invoke(); } }
public void addOadrMessageTest(string requestType, string responseType, int ResponseCode, string ResponseDescription) { MethodInvoker mi = new MethodInvoker(delegate { lock (listView1) { ListViewItem lvi = new ListViewItem("---"); lvi.SubItems.Add(DateTime.Now.ToString()); lvi.SubItems.Add(requestType); lvi.SubItems.Add(responseType); //lvi.SubItems.Add(request.distributeEvent.eiResponse.responseCode.ToString()); //lvi.SubItems.Add(request.distributeEvent.eiResponse.responseDescription); lvi.SubItems.Add(ResponseCode.ToString()); lvi.SubItems.Add(ResponseDescription); listView1.Items.Add(lvi); lvi.Selected = true; listView1.EnsureVisible(lvi.Index); if (listView1.Items.Count > m_maxEntries) { lvi = listView1.Items[0]; m_messages.Remove(lvi); listView1.Items.Remove(lvi); } //insert vào database using (var db = new DataModels.VenDB()) { var newlog = new DataModels.Log(); newlog.Date = DateTime.Now; newlog.ResponseTime = (decimal)RandomNumberBetween(1.41421, 3.14159); newlog.ResponseType = responseType; newlog.RequestType = requestType; newlog.ResponseCode = ResponseCode; newlog.ResponseDescription = ResponseDescription; newlog.VenID = VenID; newlog.VenName = VenName; newlog.VenNum = VenNum; newlog.Type = "Log"; db.InsertWithIdentity(newlog); } } }); // BeginInvoke only needs to be called if we're tyring to update the UI from // a thread that did not create it if (this.InvokeRequired) { this.BeginInvoke(mi); } else { mi.Invoke(); } }