Я работаю над визуализатором отладчика для Visual Studio в течение некоторого времени, и пока фактический визуализатор отлично работает. Проблема в том, что он всегда помещается в верхнюю часть списка визуализатора при рассмотрении переменной, которая действительно раздражает некоторых из пользователей, у которых скорее есть текст как верхний (поскольку верхняя часть также по умолчанию при открытии VS).
Я не могу найти поддержку для этого на DialogDebuggerVisualizer или DebuggerVisualizerAttribute, которые были моими первыми мыслями, поэтому я искал SO/MSDN/Google для получения информации о том, как повлиять на порядок сортировки визуализаторов (желательно поставить последний в списке), но безрезультатно,
Ниже описано, как я регистрирую свой визуализатор, а затем просто показывает форму, основанную на визуализируемом значении.
using Microsoft.VisualStudio.DebuggerVisualizers;
[assembly: System.Diagnostics.DebuggerVisualizer(
typeof(Shorthand.VSAddins.JsonVisualizer.JsonVisualizer),
typeof(VisualizerObjectSource),
Target = typeof(string),
Description = "Json Visualizer")]
namespace Shorthand.VSAddins.JsonVisualizer
{
public class JsonVisualizer : DialogDebuggerVisualizer
{
protected override void Show(IDialogVisualizerService windowService, IVisualizerObjectProvider objectProvider)
{
var json = objectProvider.GetObject() as string;
var form = new VisualizerForm { Json = json };
windowService.ShowDialog(form);
}
}
}
Кто-нибудь знает, можно ли повлиять на порядок визуализаторов, или я просто позволю?