Использование IOC в сценарии удаленного взаимодействия - PullRequest
4 голосов
/ 17 марта 2010

Я борюсь с тем, чтобы МОК работал в сценарии удаленного взаимодействия. У меня есть сервер приложений, настроенный на публикацию служб (SingleCall), настроенных с помощью XML.

Это работает так же, как мы все знаем:

RemotingConfiguration.Configure(ConfigFile, true);

Допустим, мой сервис выглядит так (псевдокод)

public class TourService : ITourService
{
    IRepository _repository;
    public TourService()
    {
         _repository = new SqlServerRepository();   
    }
}

Но то, что я бы предпочел, чтобы это выглядело вот так:

public class TourService : ITourService
{
    IRepository _repository;
    public TourService(IRepository repository)
    {
         _repository = repository;   
    }
}

На стороне клиента мы делаем что-то подобное (снова псевдокод):

(ITourService)Activator.GetObject(ITourService, tcp://server/uri);

Это заставляет сервер создать новый экземпляр моего класса TourService ...

Однако, похоже, это не сработает, потому что .NET Remoting Infrastructure хочет знать тип , который он должен публиковать, но я бы хотел указать на то, как он может получить объект он должен опубликовать. Другими словами, проложите его через технологическую трубу МОК, например, Виндзорского замка.

В настоящее время я немного растерялся в этом задании ...

1 Ответ

1 голос
/ 17 марта 2010

Если вы собираетесь использовать Виндзорский замок, вам поможет Remoting Facility. Ознакомьтесь с документацией .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...