9

在最终编织的程序集中是否有任何Fody或其依赖项(引用)的痕迹?

4

2 回答 2

8

所以这真的应该是几个问题

Fody 是否在总装中留下任何参考资料?

No Fody 不需要任何引用,在 ILWeaving 期间不添加任何引用。它也不需要部署任何文件来使用运行时

Fody 在总装过程中会留下任何痕迹吗?

是的。由于 MSBuild 和 Visual Studio 的性质,很难判断程序集是否已作为构建的一部分进行了更改。因此,Fody 将一个名为的内部接口注入ProcessedByFody到您的程序集中。这使 Fody 可以避免组件的双重处理。https://github.com/Fody/Fody/wiki/TaskAddsAFlagInterface

Fody 插件会在最终组装中留下任何痕迹吗?

好吧,对此的明显答案是“是”。所有插件都以某种方式修改目标程序集。

Fody 插件是否在最终装配中留下任何参考?

这是可选的,取决于插件的创建者。虽然许多插件都有一个 dll 来引用,但这通常只是为了提供元数据。然后插件在编译时删除引用。这意味着没有必要部署该引用 dll。例如https://github.com/Fody/PropertyChanged/wiki/WeavingWithoutAddingAReference

但是,您应该检查您正在使用的特定插件的行为。

于 2013-03-29T23:55:24.150 回答
1

请参阅以下博客

如果我理解正确,最终结果没有对 *the Fody 的任何引用。这意味着在示例中,我看不到您* 实际上是如何定义要为第一个方法参数启用的空保护而不是第二个方法参数?

大图

上面的回复是:

@Tatus 是的,最终程序集没有引用 Fody 或您使用的任何 Fody 扩展。

于 2013-03-22T09:51:55.853 回答