gpt4 book ai didi

c# - 不同解决方案的两个项目之间的循环依赖

转载 作者:太空狗 更新时间:2023-10-29 19:59:34 25 4
gpt4 key购买 nike

假设有两个 .net 项目不在同一个解决方案下。 ProjectA 在 solution1 下,ProjectB 在 solution2 下。 ProjectA 引用了 ProjectB,而 ProjectB 引用了 ProjectA。有两个类 ProjectA_Class 和 ProjectB_Class。 ProjectA_Class 创建 ProjectB_Class 的对象,ProjectB_Class 创建 ProjectA_Class 的对象。

namespace ProjectB
{
public class ProjectB_Class
{
public ProjectB_Class()
{
ProjectA_Class projA = new ProjectA_Class();
}
}
}

namespace ProjectA
{
public class ProjectA_Class
{
public ProjectA_Class()
{
ProjectB_Class projB = new ProjectB_Class();
}
}
}

我对循环依赖感到困惑。尽管它们不在同一个解决方案中,但它不会在两个类之间创建循环依赖吗?我们知道如果这两个项目驻留在同一个解决方案中,Visual Studio 将不允许我们在 ProjectB 中引用 ProjectA,在 ProjectA 中引用 ProjectB,因为它会创建循环依赖。尽管两个项目不在同一个解决方案中,但它是否仍然在两个项目之间创建循环依赖?假设,ProjectA中有一个类C创建了一个ProjectB_Class的对象,而ProjectB_Class没有使用类C的任何实例,这不是循环依赖吗,因为ProjectA和ProjectB都相互引用?

更新 1你能解释一下循环依赖的条件吗?

最佳答案

是的,这是一个循环依赖。

解决方案和项目只是组织文件的一种方式,但事实仍然是,如果 2 个类相互引用,则无论它们是否在同一解决方案中,都将被视为循环依赖。

关于c# - 不同解决方案的两个项目之间的循环依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29215182/

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