Лучший способ общения с веб-сервисом в мультиформной среде - PullRequest
0 голосов
/ 13 октября 2011

Сценарий состоит в том, что у нас есть приложение winforms, которое имеет в главной форме ссылки на некоторые веб-сервисы, которые защищены через WCF и STS / WIF.

Управление учетными данными обрабатывается в этой основной форме, но у нас есть много подформ, пользовательских элементов управления и т. Д., Которым требуется доступ к этим веб-сервисам.

В данный момент веб-сервисы создаются, а затемвызывается по мере необходимости, но теперь они защищены с помощью WCF, на самом деле нам нужны только ссылки на них в главной форме, в противном случае нам потребуется передавать учетные данные между формами, чтобы воссоздать защиту - что уклоняетсяобработки безопасности один раз.

Что вы считаете лучшим способом передачи ссылки на службы в родительской (основной) форме этим другим формам и элементам управления?

Спасибо ввперед.

1 Ответ

3 голосов
/ 13 октября 2011
  • Передать объект веб-службы в конструктор других форм следующим образом:

    var childForm = new ChildForm (theServiceObject);

  • Putэто в какой-то статической единственной тонне, и каждая форма может получить его оттуда так:

    var theServiceObject = ServiceInstance.Get ();

  • Использовать контейнер IOC и иметь другойформы получают сервис через внедрение свойства, метода или конструктора после того, как основная форма выполнила проверку учетных данных

...