在c#中跟踪程序流程的当前可能性

本文关键字:可能性 跟踪 程序 | 更新日期: 2023-09-27 18:18:44

几年前,我使用Postsharp在执行期间跟踪程序流程,而无需手动向方法添加跟踪语句

是否有其他新的方法来跟踪执行,以类似的方式调试输出?

(最好是一种不需要检测构建程序集的方法。也许不可能?)

在c#中跟踪程序流程的当前可能性

如果你只想在调试时使用这种功能,可以选择Visual Studio 2010 Ultimate中的Microsoft IntelliTrace,以及Sergey Vlasov的RunTime Flow。前者使您的程序运行非常缓慢。我没试过后者

Gibraltar使用PostSharp,但为您提供了一个非常强大的客户端来可视化您的程序流程。您还可以比较快照,查看统计信息等。不幸的是,它不是免费的:)

而且,大多数依赖注入框架(Unity, Windsor, Ninject,…)都提供方法拦截。在大多数情况下,您可以在app.config文件中定义跟踪方法。不过,我更喜欢PostSharp:)