重要信息级别的PostSharp消息未显示在Visual Studio错误列表中

问题描述 投票:1回答:1

我正在尝试基于InformationAttribute开发一个简单的方面-ScalarConstraint-目的是在编译时将消息输出/添加到Visual Studio错误列表中。我特别想要的是信息性消息,而不是警告,以便将警告视为错误等,不会导致编译中断。例如,这些消息旨在提醒开发人员,在项目中使用某些方面需要使用特定的PostSharp插件库,或者某些测试需要特定的外部先决条件。

从理论上讲,这应该很简单,特别是因为我已经有一个可以正常工作的WarningAttribute与警告一样的工作。但是,只需将调用中的SeverityType更改为Message.Write,因此:

public override void ValidateCode (object target)
{
    Message.Write (MessageLocation.Of (target),
                   SeverityType.ImportantInfo
                   "WA001",
                   this.reason) ;
}

即使PostSharp documentation指出以SeverityType.ImportantInfo编写的消息已显示在Visual Studio的“错误列表”中的“消息”下,也无效。我can确认,当从命令行调用msbuild时,这些消息将输出到控制台,但是从那里运行构建时它们不会显示在VS中。

很遗憾,到目前为止,我还没有找到好的攻击路线,也没有任何遇到类似问题的人;有没有人解决过这个问题或有好的解决方法?

visual-studio postsharp
1个回答
2
投票

我确认此功能已损坏,我们还不知道应该归咎于管道的哪一部分-PostSharp或Visual Studio。

您有两个选择:发出警告或使用emit a tooltipIWeavingSymbolsService。您可以通过`PostSharpEnvironment.CurrentProject.GetService。

我创建了一个bug report,我们将看看是否可以修复或是否需要修复文档。

© www.soinside.com 2019 - 2024. All rights reserved.