Клиент Silverlight, использующий службы WCF - проблема конфигурации в производственной среде

Мы создали Silverlight-клиент, использующий службу WCF. он отлично работает на наших локальных ящиках для разработчиков, так как оба проекта WCF service + Silverlight Host App работают на Localhost и работают нормально.

Однако в производственной среде клиент silverlight размещается на другом веб-сайте, а служба WCF теперь размещается на другом сайте в том же IIS. Приложение silverlight вообще не может вызывать службу, и после настройки диагностики WCF для службы мы обнаружили, что служба вообще не вызывается. Кажется, что каким-то образом конечную точку (производственную среду) для службы WCF необходимо обновить в Silverlight, но, похоже, нет четкого способа обновления конечной точки в Silverlight.

Любые идеи ?


person Vikram    schedule 08.03.2011    source источник
comment
Возможно, возникла проблема с политикой клиентского доступа.   -  person vortexwolf    schedule 08.03.2011


Ответы (1)


Клиент службы на стороне Silverlight создается с помощью нескольких конструкторов: один из них принимает параметр Uri. Используйте этот конструктор, передав Uri, подходящий для производственной среды. (Конструктор по умолчанию, который вы, вероятно, используете сейчас, жестко запрограммирован на использование uri службы, когда он был добавлен во время разработки.)

person Ben M    schedule 08.03.2011
comment
У нас разные ландшафты Dev, QA, Production, и при переносе выпуска из QA в Production мы, возможно, не сможем снова перекомпилировать приложение, чтобы оно указывало на производственный URI. как лучше всего управлять производственным URI динамически? - person Vikram; 12.03.2011
comment
Во время выполнения вы можете посмотреть Application.Current.Host.Source, который является Uri XAP-файла Silverlight - он должен предоставить вам достаточно информации для создания отдельного Uri для вашей веб-службы. - person Ben M; 12.03.2011