From 021352431782cd954075f712fdbbe4089848017e Mon Sep 17 00:00:00 2001 From: Chris Payne Date: Fri, 14 Aug 2015 11:34:28 +0100 Subject: [PATCH] AppConfigurationAccessor is now tenant aware --- .../Configuration/AppConfigurationAccessor.cs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/Orchard/Environment/Configuration/AppConfigurationAccessor.cs b/src/Orchard/Environment/Configuration/AppConfigurationAccessor.cs index a03cfea45..278e2118e 100644 --- a/src/Orchard/Environment/Configuration/AppConfigurationAccessor.cs +++ b/src/Orchard/Environment/Configuration/AppConfigurationAccessor.cs @@ -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; }