mam część kodu, który ma zależności, które wyglądają następująco:AutoFac: Czym zajmuje się PropertyWiringFlags.AllowCircularDependencies?
public class MyPage : Page //ASPX WebForms page
{
public IPersonBl PersonBl { get; set; }
}
public class PersonBl : IPersonBl
{
public PersonBl(ISomeMagicBl magicBl){...}
}
public class SomeMagicBl : ISomeMagicBl
{
public IPersonBl PersonBl { get; set; }
public SomeMagicBl(/*Other dependencies*/) {...}
}
Moja konfiguracja modułu wygląda następująco
...
builder.RegisterAssemblyTypes(ThisAssembly).Where(t => t.Name.EndsWith("BL")).AsImplementedInterfaces().PropertiesAutowired(PropertyWiringFlags.AllowCircularDependencies).InstancePerLifetimeScope();
...
Jak widać, mam okrężne zależności w moich zajęciach które udało mi się rozwiązać za pomocą ..PropertiesAutowired(PropertyWiringFlags.AllowCircularDependencies)..
.
Moje pytanie: Co dokładnie ta flaga robi za kulisami, aby rozwiązać te zależności cykliczne?
Perfect, thx. Zakładam, że zastosowałeś taką strategię, chciałeś tylko być pewien :) – Juri