如何让 PostSharp 向我的 Aspect 的 VisualStudio 中的构建窗口发出消息

How can I get PostSharp to emit a message to the build window in VisualStudio for my Aspect

提问人:Dan Sorak 提问时间:10/18/2022 更新时间:10/18/2022 访问量:24

问:

我有一个方面(属性),我想确保在编译时(从技术上讲,在编译时 PostSharp 检测代码时)被添加到正确的类/事件中,所以我尝试在 CompileTimeInitialize() 方法中添加一个 WriteLine 语句,但从未向“构建”窗口发出任何内容:

[PSerializable]
public class LogEventAttribute : EventInterceptionAspect
{
    public override void CompileTimeInitialize(EventInfo targetEvent, AspectInfo aspectInfo)
    {
        Console.Out.WriteLine($">>>> EVENT: {targetEvent.Name} CLASS: {targetEvent.DeclaringType?.FullName}");
        base.CompileTimeInitialize(targetEvent, aspectInfo);
    }
}

我也试过,,但都无济于事。任何建议,因为在 PostSharp 网站上似乎没有关于此的文档(无论如何我都可以找到)。Console.Error.WriteLine()Debug.WriteLine()Trace.WriteLine()

后夏普

评论


答:

0赞 Gael Fraiteur 10/18/2022 #1

使用 Message.Write

Console.WriteLine 不起作用,因为编译发生在后台进程中。