Ссылки WCF в приложении Metro (Dev 11 / Windows 8) - PullRequest
2 голосов
/ 13 февраля 2012

У меня есть следующая конфигурация:

Приложение Windows Phone (A), которое ссылается на Portable Class Library (B), которая, в свою очередь, работает со службой WCF (C).Эти три все работают вместе без проблем.Приложение (A) не имеет ссылки на службу WCF - все ссылки на службу WCF содержатся в PCL (B).

Я сейчас пытаюсь создать приложение в стиле Metro (D), которое ссылается наPortable Class Library (B), используемая в предыдущем (функциональном) приложении в качестве ссылки на проект.В приложении (D) нет ссылки на службу WCF, поскольку (как и в случае с приложением A) все это абстрагировано внутри Portable Class Library (B).

К сожалению, я быстро получаюошибка "Не удалось найти элемент конечной точки по умолчанию, который ссылается на контракт" WCFService.IService "в разделе конфигурации клиента ServiceModel", когда я пытаюсь запустить приложение D. Ошибка появляется внутри PCL (B) в момент, когда мой ServiceClient обновляется.

Я уже некоторое время гуглю это безуспешно, так как большинство решений ориентировано на приложения, не относящиеся к Metro (и мое приложение отлично работает с WP7 и Studio 2010). Любые предложения будут с благодарностью приняты!

1 Ответ

0 голосов
/ 18 октября 2012

Вы пытались собрать PCL в VS 2012 для Windows 8?

Я также разработал службу WCF, которую, как я надеялся, мог бы использовать как в своем приложении для Windows 8, так и в приложении Windows Phone 7.У меня нет лишней путаницы в том, что она обернута в PCL, но из-за того, что я этого не сделал, меня мучительно осознали, что контракты на конечную точку изменились.Итак, теперь у меня есть 2 набора автоматически сгенерированного кода WebService, который я включаю в каждый отдельный файл проекта, и, кроме того, у меня также есть разные соглашения о вызовах для двух платформ.В Windows Phone 7 мне пришлось создавать обратные вызовы, которые обрабатывают завершение асинхронных веб-запросов, тогда как в Windows 8 я могу просто ожидать результата вызова веб-запроса, и он возвращает любой результат в соответствующей структуре.

Возможно ли, что ваш PCL пытается справиться с этим в фоновом режиме и с треском проваливается?

...