Sto lavorando con Nop Commerce
e mi chiedo se qualcuno possa aiutarmi con la mia confusione.Capire come vengono caricate dal database le impostazioni di Nop Commerce
Ho eseguito il debug del codice molte volte cercando di scoprire come vengono caricate le impostazioni all'avvio dell'applicazione web. Io proprio non capisco!
Tutte le classi di impostazioni implementano l'interfaccia ISettings
. Prendiamo ad esempio le impostazioni del cliente. Ho scoperto che è rappresentato dalla classe CustomerSettings
. Nel database c'è un Setting table
. I dati per le impostazioni dei clienti sembra somethng come questo:
customersettings.usernamesenabled
customersettings.checkusernameavailabilityenabled
customersettings.allowuserstochangeusernames
... and so on...
Come e dove sono ciascuna di queste impostazioni mappati dal customersettings
alla classe CustomerSettings
e una proprietà come usernamesenabled
mappato alla proprietà UsernamesEnabled
nella classe CustomerSettings? E perché è stato implementato in questo modo?
So che ha qualcosa a che fare con il seguente codice nella classe DependencyRegistrar
:
builder.RegisterGeneric(typeof(ConfigurationProvider<>)).As(typeof(IConfigurationProvider<>));
builder.RegisterSource(new SettingsSource());
Se qualcuno mi può puntare nella giusta direzione, allora sarebbe apprezzato.
Sì, grazie sono riuscito a capirlo. –