Передача информации о конфигурации на сервисную фабрику

1

У меня есть контроллер MVC, который вызывает службу (GlobalService) для выполнения операций на основе переданных параметров, GlobalService выполняет определенные операции в своем собственном репозитории, а также другие службы платформы, созданные с использованием фабрики. Если я хочу передать определенную конфигурационную информацию, такую как строки подключения, и некоторые пути пользовательского интерфейса для использования для изображений и т.д., К объекту IPlatform создается лучший способ сделать это.

MVC Controller → Gloabl Service → IPlatformFactory.GetPlatform("platform1") ---> Platform1 (строка connString, строка filePath)

  • 0
    Кому (какому объекту) принадлежит информация?
  • 0
    Информация о конфигурации принадлежит приложению MVC
Показать ещё 4 комментария
Теги:
asp.net-mvc

1 ответ

0
Лучший ответ

Рассмотрите возможность добавления параметров в конструктор Platform, как это сделано в DbContext

public interface IPlatform 
{
    ...
}

public abstract class Platform : IPlatform 
{
    public Platform(string connString , string filePath) 
    {
      ...
    }
}


public sealed class Platform1 : Platform
{
    public Platform1(string connString, string filePath) : base(connString,  filePath) {}
}


public interface IPlatformFactory
{
    IPlatform GetPlatform(string code, string connString, string filePath);
}


public class PlatformFactory : IPlatformFactory
{

    public  IPlatform GetPlatform(string code, string connString, string filePath)
    {
        ...
        return new Platform1(connString,  filePath);
    }
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню