В настоящее время мы используем static
методы для получения значений конфигурации, таких как:
public static string Wtrealm()
{
return ConfigurationManager.AppSettings["ida:Wtrealm"];
}
Однако я не являюсь поклонником «метода» внешнего вида, и я бы очень хотеллучше использовать свойство, а именно свойство выражения тела:
public static string Wtrealm => ConfigurationManager.AppSettings["ida:Wtrealm"];
Таким образом, в основном мы будем использовать Config.Wtrealm
вместо Config.Wtrealm()
.
Означает ли это одинаково эффективный IL?Или я здесь представляю проблему с кэшированием?
Обратите внимание, что мы также используем это для строк подключения, например:
public static string ConnectionString()
{
return ConfigurationManager.ConnectionStrings["conn_string_name"].ConnectionString;
}
А также для получения настроек, которые необходимо преобразовать передих можно использовать:
private static readonly Lazy<bool> LazyUseFakeUser =
new Lazy<bool>(() => ConfigurationHelper.GetBool("UseFakeUser"));
public static bool UseFakeUser()
{
return LazyUseFakeUser.Value;
}