private void dataGridViewWebsite_SelectionChanged(object sender, EventArgs e) { if (dataGridViewWebsite.SelectedRows.Count == 1) { MateWeb selectWeb = dataGridViewWebsite.SelectedRows[0].DataBoundItem as MateWeb; _bindingNoticeUsers = new BindingList <MateNoticeUser>(selectWeb.NoticeUsers); dataGridViewNoticeUserEmail.DataSource = _bindingNoticeUsers; } else { _bindingNoticeUsers = new BindingList <MateNoticeUser>(); dataGridViewNoticeUserEmail.DataSource = _bindingNoticeUsers; } }
private void WebListenThread(object obj) { if (obj is MateWeb) { while (true) { MateWeb mateWeb = obj as MateWeb; string stateCode = WebHelper.GetRequestStatusCode(mateWeb.WebUrl).ToString(); textBoxErrorLog.Invoke(new Action( () => { textBoxErrorLog.AppendText(string.Format("{{Url:{0} StateCode:{1} LogTime:{2}}}{3}", mateWeb.WebUrl, stateCode, DateTime.Now, Environment.NewLine)); textBoxErrorLog.ScrollToCaret(); })); if (stateCode != mateWeb.LastStateCode) { mateWeb.LastStateCode = stateCode; MateErrorLog mateErrorLog = new MateErrorLog() { ErrorTime = DateTime.Now, DetectionInterval = mateWeb.DetectionInterval, WebId = mateWeb.Id, StateCode = stateCode }; _sqliteHelper.AddErrorLog(mateErrorLog); if (stateCode != "200") { EmailHelper.SendMail(_admin, mateWeb.ToMailAddress, "检查网站链接发生故障", mateWeb.WebUrl + " " + "链接发生故障"); } } Thread.Sleep((int)mateWeb.DetectionInterval * 1000); } } }