Я бы программным образом изменил имя хоста конечной точки внутри приложения silverlight в зависимости от конкретного параметра, переданного с главной страницы в приложение SL (конечно, это означает, что вам придется разместить ваше приложение на другой странице при развертывании на тестовый сервер, или вы можете редактировать хост-страницу «на лету» как часть вашего сценария развертывания).
Для напр .: на тестовой странице:
<param name="initParams" value="testServer=myhost.com"/>
Затем в Silverlight приложении вы читаете параметр TestServer (вы получите Хеш initParams в случае Application_Startup) и программно задать имя хоста на то, что вы получили , Для удаленного прокси-сервера вам понадобится какая-то централизованная фабрика, иначе вам придется заменить имя хоста в нескольких разных местах.
Кроме того, я бы сделал это только в #if DEBUG (или даже лучше определить другую константу компиляции, которая будет удалена до фактического развертывания), поэтому нет никакого риска, что это будет использоваться для любой злонамеренной цели.
Я делаю что-то подобное, но я нашел, что результаты лучше, если вы размещаете приложение на странице ASP.NET и динамически записываете initParams из файла web.config хоста. Он позволяет легко устанавливать в разных местах, устанавливая различные конфигурационные файлы на главной странице. – Stephan