¿Debería considerar el uso de Properties.Settings.Default
dentro de una clase como una dependencia y, por lo tanto, inyectarlo?Usar la inyección de dependencia para Properties.Settings.Default?
ej .:
public class Foo
{
private _settings;
private bool _myBool;
public Foo(Settings settings)
{
this._settings = settings;
this._myBool = this._settings.MyBool;
}
}
.
.
o consideraría el uso de Settings
como una aplicación global como una buena práctica?
ej .:
public class Foo
{
private bool _myBool;
public Foo()
{
this._myBool = Properties.Settings.Default.MyBool;
}
}
Me gusta la idea de una interfaz, pero no estoy seguro de cómo implementarla. ¿Quiere decir que tiene una interfaz que tiene propiedades que se correlacionan directamente con las de Configuración, o usa ConfigurationManager, de la misma manera que lo hace el código al que se vincula? No se utilizó ConfigurationManager anteriormente, por lo que no estoy muy seguro de qué hacer aquí. Otro empujón en la dirección correcta sería apreciado. :) – Andy
El 'IConfigurationManager' era solo un ejemplo de dónde pueden estar las configuraciones externas en una aplicación y desea que el contenedor las manipule e inyecte en las clases. Para su clase 'Settings', me inclinaría a crear una interfaz' ISettings' que mejor se adapte a los miembros públicos de 'Settings'; así que si tiene una propiedad 'ConnectionString' en' Configuración', haga de esto una propiedad en la interfaz, etc. –
Gracias por aclarar, eso tiene sentido. – Andy