.net 我可以自动生成和输出程序集依赖关系图吗?

.net 我可以自动生成和输出程序集依赖关系图吗?,.net,deployment,build,.net-assembly,dependency-graph,.net,Deployment,Build,.net Assembly,Dependency Graph,假设我创建了3个程序集A、B和C,其中B引用C,A引用B。生成A时,我会在bin\debug中找到A.dll和B.dll,但没有C.dll。两个引用都具有copy local=true 我不明白它为什么会这样,因为如果你这样做的话,你肯定会认为事情不起作用 有人能解释一下为什么事情是这样的吗?如果我已经通过引用告诉系统a需要B而B需要C,那么有人知道如何构建所有需要构建的东西吗?从B到C的引用是属性中唯一的语句类型吗?在本例中,B在编译时需要C,但在执行时不需要C,因为类型对象将被序列化。我试着

假设我创建了3个程序集A、B和C,其中B引用C,A引用B。生成A时,我会在bin\debug中找到A.dll和B.dll,但没有C.dll。两个引用都具有copy local=true

我不明白它为什么会这样,因为如果你这样做的话,你肯定会认为事情不起作用


有人能解释一下为什么事情是这样的吗?如果我已经通过引用告诉系统a需要B而B需要C,那么有人知道如何构建所有需要构建的东西吗?

从B到C的引用是属性中唯一的语句类型吗?在本例中,B在编译时需要C,但在执行时不需要C,因为类型对象将被序列化。我试着看看如果我添加了一个程序集,其入口点是a WinForms,应用程序引用了a,会发生什么。这会产生奇怪的结果:如果a不包含编译时依赖于B的代码,则只生成App.exe。如果A包含使用B的代码,而B使用C,则会生成App和3个库-无论App是否使用A中的任何内容@LaurentLARIZZA不,恰恰相反!许多程序集依赖于公共程序集。此程序集引用具有跟踪侦听器实现的EntLib程序集。通过EntLib配置有依赖项注入,使用哪种类型的跟踪侦听器,但是我们的公共程序集引用了相关的EntLib库。它只是没有被部署。从每个使用common的项目中添加对相关entlib库Microsoft.Practices.EnterpriseLibrary.Database.Logging的引用可以解决此问题,但我不明白为什么我们必须…事实上,当VS为特定项目部署程序集时,它使用您请求的直接依赖项部署项目人工制品。但是当涉及到间接依赖时,VS似乎信任DLL ans EXE的PE头中的导入指令。