Метод Miniprofiler.Current не возвращает время

Я пытаюсь получить время с помощью этого кода MiniProfiler,

var profiler = StackExchange.Profiling.MiniProfiler.Current;

Но это возвращается 0 ms в результате. Как получить current time в минипрофилере.

Этот метод дает мне результат с MiniProfiler version 2.1.0.

Щас пользуюсь MiniProfiler version 3.1.1.139,

1 ответ

Вы можете получить общее прошедшее время для текущего MiniProfiler путем доступа StackExchange.Profiling.MiniProfiler.Current.DurationMilliseconds - но только после того, как текущий MiniProfiler был остановлен (он заполняется только в этот момент). До его остановки активному экземпляру MiniProfiler не будет задано это свойство.

Сейчас нет способа получить истекшее время для активного экземпляра MiniProfiler. Существует внутреннее свойство, которое называетсяElapsedTicks но так как это внутреннее свойство, вы не можете получить к нему доступ за пределами сборки MiniProfiler.

Если для вас очень важно иметь доступ к этим данным для активного экземпляра MiniProfiler, вы можете разветвить текущую сборку и переключить свойство на общедоступное (хотя перед этим я бы задал вопрос, каков ваш вариант использования - возможно есть другой способ добиться этого).

Другие вопросы по тегам