Как я могу использовать ServiceHost (System.ServiceModel) в Silverlight 4?(C #) - PullRequest
2 голосов
/ 03 ноября 2011

Я пытаюсь использовать пример WCF в приложении Silverlight (я хочу принимать запросы на добавление точек данных на карту Sliverlight Bing.

Я новичок в Silverlight и .NET. Пока у меня есть карта Bing, и я могу добавить кнопки. То, что я хочу, это принимать межпроцессное взаимодействие для вставки кнопок из другого приложения.

Следуя некоторым веб-примерам на WCF, я попытался использовать ServiceHost (System.ServiceModel), но, по-видимому, это недоступно в приложении silverlight?

Я в замешательстве. Как я могу получить данные в приложение Silverlight?

Это действительно очень простой пример - все, что я хочу сделать, это добавить метку на широте / долготе.

EDIT

Я пытаюсь добавить кнопки / данные на карту Bing (приложение silverlight), когда другой процесс обновляется / уведомляется о каком-либо событии с указанием местоположения. Теперь я понимаю, что silverlight является локальным для клиентского компьютера и находится в «песочнице», но мне все равно нужно каким-то образом вызвать какое-либо событие на клиенте в приложении silverlight.

Ответы [ 2 ]

3 голосов
/ 03 ноября 2011

Вам нужно работать по-другому -

ServiceHost предназначен для «размещения» службы - это то, что создает на стороне сервера соединение WCF.Silverlight, учитывая его песочницу, может действовать только как служба клиент .

Ваш другой процесс должен будет использовать ServiceHost.Затем он может передавать данные вашему клиенту Silverlight (клиент может подключиться и запросить их).

2 голосов
/ 03 ноября 2011

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

Другое приложение может взаимодействовать с веб-службой на сервере, который также использует клиент Silverlight.Вы можете обмениваться данными таким образом.

...