我正在和我一起工作,Nop Commerce
想知道是否有人可以帮助我解决我的困惑。
我已经多次调试代码,试图找出在启动 Web 应用程序时如何加载设置。我就是不明白!
所有设置类都实现该ISettings
接口。让我们以客户设置为例。我发现它由CustomerSettings
类表示。在数据库中有一个Setting table
. 客户设置的数据如下所示:
customersettings.usernamesenabled
customersettings.checkusernameavailabilityenabled
customersettings.allowuserstochangeusernames
... and so on...
这些设置中的每一个是如何以及在哪里映射customersettings
到CustomerSettings
类以及一个属性(如usernamesenabled
映射到UsernamesEnabled
CustomerSettings 类中的属性)的?为什么它是这样实施的?
我知道这与DependencyRegistrar
类中的以下代码有关:
builder.RegisterGeneric(typeof(ConfigurationProvider<>)).As(typeof(IConfigurationProvider<>));
builder.RegisterSource(new SettingsSource());
如果有人能指出我正确的方向,那将不胜感激。