Я делаю приложение, которое поддерживает несколько баз данных.Архитектура пивной создает экземпляр правильного класса от правильного поставщика, используя приведенный ниже синглтон.
static private ArticlesProvider _instance = null;
static public ArticlesProvider Instance
{
get
{
if (_instance == null)
_instance = (ArticlesProvider)Activator.CreateInstance(
Type.GetType(Globals.Settings.Articles.ProviderType));
return _instance;
}
}
У меня есть тип провайдера, хранящийся в пользовательском разделе в моем web.config
, и я пытаюсь создать фабрику, которая создает правильный класс DAL на основе провайдера набора.
Вышеуказанное в настоящее время переводит все пространство имен, хранящееся в web.config
, в соответствующий класс DAL и немного ограничено, поскольку создает только экземпляры ArticlesProvider
.Как я могу создать универсальную фабрику, чтобы я мог передать тип провайдера , например, SqlServer и любой класс , например ArticleDAL , который я хочу создать?
Спасибовперед.