目前有一个具有GetSelector
函数的 Factory 类,该函数返回ISelector
. 我有几个实现 ISelector 的不同类,并且基于我希望收到适当ISelector
回复的设置。
public interface ISelector
{
string GetValue(string Params);
}
public class XmlSelector : ISelector
{
public string GetValue(string Params)
{
// open XML file and get value
}
}
public static class SelectorFactory
{
public static ISelector GetSelector()
{
return new XmlSelector(); // Needs changing to look at settings
}
}
我的问题是存储设置的最佳方式是什么?我知道使用 AppSettings 等,但我不确定是否要在 web.config 中存储字符串并对其执行开关 - 如果 ISelector 的新实现是制造,那么工厂将需要改变。有没有办法存储程序集名称并基于它进行实例化?
谢谢,
克里斯