gpt4 book ai didi

.net - Microsoft 如何创建具有循环引用的程序集?

转载 作者:行者123 更新时间:2023-12-03 04:46:01 24 4
gpt4 key购买 nike

在 .NET BCL 之间存在循环引用:

  • System.dllSystem.Xml.dll
  • System.dllSystem.Configuration.dll
  • System.Xml.dllSystem.Configuration.dll

下面是 .NET Reflector 的屏幕截图,它显示了我的意思:

enter image description here

微软如何创建这些程序集对我来说是个谜。是否需要特殊的编译过程才能实现这一点?我想这里正在发生一些有趣的事情。

最佳答案

我只能告诉 Mono 项目是如何做到这一点的。该定理非常简单,尽管它使代码变得困惑。

他们首先编译System.Configuration.dll,而不需要引用System.Xml.dll的部分。之后,他们以正常方式编译 System.Xml.dll。现在魔法来了。他们重新编译System.configuration.dll,其中部分需要引用System.Xml.dll。现在已经成功编译了循环引用。

简而言之:

  • A 是在没有代码的情况下编译的需要 B 以及对 B 的引用。
  • B 已编译。
  • A 已重新编译。

关于.net - Microsoft 如何创建具有循环引用的程序集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1316518/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com