mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 11:44:58 +08:00
AppConfigurationAccessor is now tenant aware
This commit is contained in:
@@ -7,13 +7,20 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace Orchard.Environment.Configuration {
|
||||
public class AppConfigurationAccessor : IAppConfigurationAccessor {
|
||||
private readonly ShellSettings _shellSettings;
|
||||
public AppConfigurationAccessor(ShellSettings shellSettings) {
|
||||
_shellSettings = shellSettings;
|
||||
}
|
||||
|
||||
public string GetConfiguration(string name) {
|
||||
var appSettingsValue = ConfigurationManager.AppSettings[name];
|
||||
var tenantName = String.Format("{0}:{1}", _shellSettings.Name, name);
|
||||
|
||||
var appSettingsValue = ConfigurationManager.AppSettings[tenantName] ?? ConfigurationManager.AppSettings[name];
|
||||
if (appSettingsValue != null) {
|
||||
return appSettingsValue;
|
||||
}
|
||||
|
||||
var connectionStringSettings = ConfigurationManager.ConnectionStrings[name];
|
||||
var connectionStringSettings = ConfigurationManager.ConnectionStrings[tenantName] ?? ConfigurationManager.ConnectionStrings[name];
|
||||
if (connectionStringSettings != null) {
|
||||
return connectionStringSettings.ConnectionString;
|
||||
}
|
||||
|
Reference in New Issue
Block a user