Как я могу получить код ошибки из списка ошибок в VS 2015/2017 с DTE? Или другие способы могут получить код ошибки?

Я хочу расширить Список ошибок в Visual studio 2015/2017, я использую только DTE, чтобы получить ErrorItem, однако ErrorItem не содержит ErrorCode, как показано ниже, как я могу получить код ошибки? Заранее спасибо! введите описание изображения здесь

1 ответ

Да, у меня тоже было это. Может быть, уже слишком поздно, чтобы помочь, но здесь вы идете:

    var errorList = _dte.ToolWindows.ErrorList as IErrorList;
    // placed in dictionary for easy access later
    var entries = (errorList?.TableControl.Entries ?? Enumerable.Empty<ITableEntryHandle>())
        .Select((e, i) => new { Entry = e, Index = i + 1 })
        .ToDictionary(it => it.Index, it => it.Entry);

    var errors = errorList.ErrorItems;
    for (int i = 1; i <= errors.Count; i++)
    {
        ErrorItem error = errors.Item(i);
        entries[i].TryGetValue("errorcode", out var errorCode);
        var item = new
        {
            error.Column,
            error.Description,
            error.ErrorLevel,
            error.FileName,
            error.Line,
            error.Project,
            Code = errorCode
        };
    }
Другие вопросы по тегам