private void 绑定单次启动(int __启动次数) { if (__启动次数 < 1) { __启动次数 = _概要信息.启动列表.Count; } if (__启动次数 > _概要信息.启动列表.Count) { __启动次数 = _概要信息.启动列表.Count; } _详细信息列表 = _I文本分析.查询详细(__启动次数); //_分组信息列表 = _详细信息列表.FindAll(q => q.跟踪周期 != E跟踪周期.无 && q.跟踪标记 > 0); _分组信息列表 = _详细信息列表.FindAll(q => q.等级 <= TraceEventType.Information); _启动信息 = _概要信息.启动列表[__启动次数 - 1]; //this.out概要信息列表.DataSource = _分组信息列表; this.out概要信息列表.DataSource = (from q in _分组信息列表 select new M详细信息 { Id = q.Id, 标题 = q.标题, 等级 = q.等级, 跟踪标记 = q.跟踪标记, 内容 = q.内容.Replace(Environment.NewLine, ""), 时间 = q.时间, 线程 = q.线程, }).ToList(); this.out详细信息列表.DataSource = _详细信息列表; this.out当前启动次数.Text = __启动次数.ToString(); this.out单次开始时间.Text = _详细信息列表.First().时间.ToString("MM-dd HH:mm:ss"); this.out单次结束时间.Text = _详细信息列表.Last().时间.ToString("MM-dd HH:mm:ss"); }
public static M详细信息 解析调试信息(string line) { line = line.Replace("<br/>", Environment.NewLine); var spans = line.Split(new[] { _字段分隔符 }, 6, StringSplitOptions.None); if (spans.Length < 4) { return(null); } var __时间描述 = spans[0].Trim(); var __等级描述 = spans[1].Trim(); var __线程 = spans[2].Trim(); var __标题 = spans[3].TrimEnd(' '); var __内容 = ""; if (spans.Length > 4) { __内容 = spans[4].TrimStart('\r', '\n'); if (__内容.Contains("输入1/2 : 经度")) { Debug.Write(""); } } var __辅助信息 = ""; if (spans.Length > 5) { __辅助信息 = spans[5]; __辅助信息 = __辅助信息.Replace(_字段分隔符, Environment.NewLine + Environment.NewLine); } DateTime __时间; TraceEventType __等级; if (!DateTime.TryParseExact(__时间描述, "MM-dd HH:mm:ss.fff", null, System.Globalization.DateTimeStyles.None, out __时间)) { return(null); } if (!Enum.TryParse(__等级描述, out __等级)) { return(null); } var __M调试信息 = new M详细信息 { 时间 = __时间, 等级 = __等级, 线程 = __线程, 标题 = __标题, 内容 = __内容, 辅助信息 = __辅助信息, }; if (!string.IsNullOrEmpty(__辅助信息.Trim())) { __M调试信息.内容 = string.Format("{0}{2}{1}", __内容, __辅助信息, _内容和扩展分割字符); } return(__M调试信息); }
private void 定位数据(M详细信息 __绑定数据) { if (__绑定数据 == null) { return; } var __分组位置 = _分组信息列表.FindIndex(q => q.时间 > __绑定数据.时间) - 1; if (__分组位置 < 0) { __分组位置 = _分组信息列表.Count - 1; } this.out概要信息表格.FocusedRowHandle = this.out概要信息表格.GetRowHandle(__分组位置); this.out详细信息表格.FocusedRowHandle = this.out详细信息表格.GetRowHandle(__绑定数据.Id - _启动信息.Id); }
public F详细信息(M详细信息 __M详细信息) { InitializeComponent(); _当前详细信息 = __M详细信息; }
public static M详细信息 解析调试信息(string line) { line = line.Replace("<br/>", Environment.NewLine); var spans = line.Split(new[] { _字段分隔符 }, StringSplitOptions.None); if (spans.Length < 7) { return(null); } var __时间描述 = spans[0].Trim(); var __等级描述 = spans[1].Trim(); var __事件描述 = spans[2].Trim(); var __线程 = spans[3].Trim(); var __标题 = spans[4].Trim(); var __内容 = spans[5].Trim(); var __辅助信息 = spans[6].Trim(); var __行号 = string.Empty; var __方法 = string.Empty; var __类型 = string.Empty; var __文件 = string.Empty; if (spans.Length > 7) { __行号 = spans[7].Trim(); } if (spans.Length > 8) { __方法 = spans[8].Trim(); } if (spans.Length > 9) { __类型 = spans[9].Trim(); } if (spans.Length > 10) { __文件 = spans[10].Trim(); } DateTime __时间; TraceEventType __等级; int __跟踪标记; E跟踪周期 __跟踪周期; if (!DateTime.TryParse(__时间描述, out __时间)) { return(null); } if (!Enum.TryParse(__等级描述, out __等级)) { return(null); } if (!int.TryParse(__事件描述, out __跟踪标记)) { return(null); } if (__跟踪标记 == 0) { __跟踪周期 = E跟踪周期.无; } else { if (!Enum.TryParse(__标题, out __跟踪周期)) { return(null); } } var __M调试信息 = new M详细信息 { 时间 = __时间, 等级 = __等级, 线程 = __线程, 标题 = __标题, 内容 = __内容, 辅助信息 = __辅助信息, 跟踪周期 = __跟踪周期, 跟踪标记 = __跟踪标记, 方法 = __方法, 类型 = __类型, 文件 = __文件, 行号 = __行号, 耗时 = 0, 来源 = "文本", }; if (!string.IsNullOrEmpty(__辅助信息.Trim())) { __M调试信息.内容 = string.Format("{0}{2}{1}", __内容, __辅助信息, _内容和扩展分割字符); } return(__M调试信息); }