Open max-arshinov opened 1 year ago
Hello @max-arshinov, a workaround at this time would be:
var AppServices = Classes().That().HaveName(@"\S+AppService", true);
foreach (var appService in AppServices.GetObjects(ARCHITECTURE))
{
Classes()
.That()
.Are(AppServices)
.And()
.AreNot(appService)
.Should()
.NotCallAny(MethodMembers().That().AreDeclaredIn(appService))
.Check(ARCHITECTURE);
}
or similarly:
var AppServices = Classes().That().HaveName(@"\S+AppService", true);
foreach (var appService in AppServices.GetObjects(ARCHITECTURE))
{
Classes()
.That()
.Are(appService)
.Should()
.NotCallAny(
MethodMembers()
.That()
.AreDeclaredIn(AppServices)
.And()
.AreNotDeclaredIn(appService)
)
.Check(ARCHITECTURE);
}
We have a similar case in #229 where self references lead to such a problem and are working on a solution.
I want to make sure that Application Services don't call other Application Services and call DomainServices instead.
However, code like this violates this rule
Is there a way to exclude "self" from the rule? If not, is there any other workaround?