2013-08-01 4 views
1

Я создал приложение Silverlight, которое использует службу. Служба определена в веб-проекте в этом решении. Приложение silverlight ссылается на него и использует его. Все работает локально на моей машине dev, когда я запускаю приложение в Visual Studio.Служба в приложении Silverlight не работает при развертывании

Хочу отметить, что URL-им дано от VS является: http://localhost:50453/Default.htm

Но когда я раскрываю это (с помощью файловой системы копирования развернуть параметр) запускается веб-страницы, и это выглядит окей, за исключением того, что, кажется, есть проблема с использованием оказание услуг. В Silverlight приложения, если я смотрю на ссылочных настройках URL к сервису: http://localhost:50453/SilverlightService.svc и то, вероятно, что не так, как сервер, что Im развертывают к не имеет ни малейшего понятия Что на порт 50453.

Так Im пытаясь изменить этот порт на 80 на моей машине, но мне не повезло. У моего веб-проекта нет никакого свойства, где я могу изменить порт. Открытый URL-адрес и URL-адрес заблокированы на http://localhost:50453: -/

Как изменить среду моего dev в соответствии с производственной средой с портом 80?

ответ

0

Возможно, вы можете изменить URL-адрес веб-проекта в свойствах проекта, но это нехорошее решение, потому что вы получите те же проблемы при доступе к приложению SL с удаленного компьютера.

Вы должны установить URL службы программно, как выше:

ServiceReference1.Service1Client svc = new ServiceReference1.Service1Client(); 
Uri serviceUri = new Uri(System.Windows.Browser.HtmlPage.Document.DocumentUri, "Service1.svc"); 
svc.Endpoint.Address = new System.ServiceModel.EndpointAddress(serviceUri); 

Это решение использует тот же URL, который вы используете для доступа к приложения Silverlight.

Смежные вопросы