如何在.NET中启用程序集绑定失败日志记录(Fusion)?
程序集绑定日志查看器有很多错误(例如,它通常不会清空日志)并且功能相当缺乏(搜索、排序、过滤几乎都可用)。
所以我想知道是否
如果没有第二个选项,我知道您可以相对简单地创建 CLR Host 实现(尽管并非平凡),但如果您需要的只是比现有 Fusion 日志查看器更细粒度的控制,那么它似乎有点过大了。
请注意,我已经看到了这个答案,但这似乎并没有回答这个问题。
回复一些评论:
我知道程序集重定向、事件AssemblyResolve和AssemblyLoad事件,但第一个只能用作最后的手段(探测链中的最后一个),第二个只会在加载程序集后触发。两者都不能用于除您自己的进程之外的其他进程,也不能显示整个探测过程。
我注意到,使用 RyuJIT 时,由于编译和加载编译后的 IL 的方式不同,一些绑定看起来略有不同,顺序也不同。虽然我已经能够研究和解决具有约束力的问题,但我非常不喜欢fuslogvw.exe它是一种耗时的(尽管是一种有用的)工具。因此,我开始寻找更好的工具来监控探测过程(但毫无结果)。