KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
How can keep all the configuration file code out of my logic code using Settings (ApplicationSettingsBase) and Dependency Injection? With configuration I mean a customer specific configuration file. Do I really have to inject a configuration class everytime I need it or is there another pattern? It would be great to get some sample code! Samples: Static Configuration: public static class StaticConfiguration { public static bool ShouldApplySpecialLogic { get; set; } public static string SupportedFileMask { get; set; } } public class ConsumerOfStaticConfiguration { public void Process() { if (StaticConfiguration.ShouldApplySpecialLogic) { var strings = StaticConfiguration.SupportedFileMask.Split(','); foreach (var @string in strings) { } } } } Non static Configuration: public interface IConfiguration { bool ShouldApplySpecialLogic { get; set; } string SupportedFileMask { get; set; } } public class Configuration : IConfiguration { public bool ShouldApplySpecialLogic { get; set; } public string SupportedFileMask { get; set; } } public class Consumer { private readonly IConfiguration _configuration; public Consumer(IConfiguration configuration) { _configuration = configuration; } public void Process() { if (_configuration.ShouldApplySpecialLogic) { var strings = _configuration.SupportedFileMask.Split(','); foreach (var @string in strings) { } } } } Static Context with non static configuration: public static class Context { public static IConfiguration Configuration { get; set; } } public class ConsumerOfStaticContext { public void Process() { if (Context.Co
Tags (comma-separated)
Save Edits
Cancel