我正在编写一个MVC 5互联网应用程序,并对潜在的编码缺陷提出疑问。
我有一个AccountService
类,它有一个MapLocationMarkerService
对象,在构造函数调用中初始化。 MapLocationMarkerService
的构造函数参数为AccountService
。
当我创建AccountService
对象时,我在初始化AccountService
对象时传入当前的MapLocationMarkerService
对象。
这会导致无限循环吗?
答案 0 :(得分:0)
没有
public class A
{
public B b;
public A()
{
b = new B(this);
}
}
public class B
{
public A a;
public B(A _a)
{
a = _a;
}
}
答案 1 :(得分:0)
这称为循环引用。它可能表明服务没有正确解耦。您可以将某些方法重构为另一个服务类以删除循环引用。
This文章可以帮助您了解并解决问题。