private void SaveTiming(Timing timing) { var rootTiming = new TimingPoco { Id = timing.Id, ParentTimingId = timing.IsRoot ? (Guid?)null : timing.ParentTiming.Id, Name = timing.Name, StartMilliseconds = (double)timing.StartMilliseconds, DurationMilliseconds = (double)timing.DurationMilliseconds }; Timings.Insert(rootTiming); if (timing.HasChildren) { foreach (var child in timing.Children) { SaveTiming(child); } } if (timing.HasCustomTimings) { foreach (var customTimingsKV in timing.CustomTimings) { SaveCustomTimings(timing, customTimingsKV); } } }
private static Timing TimingPocoToTiming(TimingPoco timingPoco) { if (timingPoco == null) { return(null); } #pragma warning disable 618 return(new Timing #pragma warning restore 618 { Id = timingPoco.Id, Name = timingPoco.Name, StartMilliseconds = (decimal)timingPoco.StartMilliseconds, DurationMilliseconds = (decimal)timingPoco.DurationMilliseconds, }); }
/// <summary> /// Saves parameter Timing to the timings table. /// </summary> private void SaveTiming(MiniProfiler profiler, Timing t) { var timingPoco = new TimingPoco { Id = t.Id.ToString(), MiniProfilerId = profiler.Id.ToString(), ParentTimingId = t.IsRoot ? (string)null : t.ParentTiming.Id.ToString(), Name = Truncate(t.Name, 200), Depth = t.Depth, StartMilliseconds = (double)t.StartMilliseconds, DurationMilliseconds = (double)t.DurationMilliseconds, DurationWithoutChildrenMilliseconds = (double)t.DurationWithoutChildrenMilliseconds, SqlTimingsDurationMilliseconds = (double)t.SqlTimingsDurationMilliseconds, IsRoot = t.IsRoot, HasChildren = t.HasChildren, IsTrivial = t.IsTrivial, HasSqlTimings = t.HasSqlTimings, HasDuplicateSqlTimings = t.HasDuplicateSqlTimings, ExecutedReaders = t.ExecutedReaders, ExecutedScalars = t.ExecutedScalars, ExecutedNonQueries = t.ExecutedNonQueries }; Timings.Insert(timingPoco); if (t.HasSqlTimings) { foreach (var st in t.SqlTimings) { SaveSqlTiming(profiler, st); } } if (t.HasChildren) { foreach (var child in t.Children) { SaveTiming(profiler, child); } } }
private static Timing TimingPocoToTiming(TimingPoco timingPoco) { if (timingPoco == null) return null; #pragma warning disable 618 return new Timing #pragma warning restore 618 { Id = timingPoco.Id, Name = timingPoco.Name, StartMilliseconds = (decimal) timingPoco.StartMilliseconds, DurationMilliseconds = (decimal) timingPoco.DurationMilliseconds, }; }