Внутренняя ошибка в MS автоматически сгенерированного метода WCF - PullRequest
0 голосов
/ 13 марта 2012

У меня проблема с WCF. Мой тестовый код довольно прост.

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

Все это окружено попыткой поймать.

Когда мой метод сервисного уровня просто возвращает постоянно определенную строку, проблем, похоже, не возникает - однако, как только он вызывает более сложный метод, он терпит неудачу.

При отладке он даже не достигает метода сложной модели; до этого происходит сбой внутри некоторого автоматически сгенерированного кода от Microsoft:

/ WuSIQ.jpg

Поскольку сообщение об ошибке «NotFound» не является самым полезным или конкретным, вы можете себе представить, что моя проблема с поиском подсказок.

Я подумал, что, возможно, автоматически сгенерированный код может отправлять только простые данные, поэтому я создал временную строку и вернул ее, но это не помогло.

У меня уже есть: политика доступа клиента, добавлена ​​ссылка на службу, удалена повторяющаяся ссылка в ServiceReferences.ClientConfig и ServiceLayer.svc.cs.

Я отлаживаюсь из главного окна, и мои контрольные точки подобраны.

Любой

1 Ответ

0 голосов
/ 28 марта 2012

У меня были некоторые ошибки в методе на стороне сервера, которые были быстро обнаружены после исправления отладки.

Я исправил это, как я сказал в комментариях, установив для проекта «Несколько проектов запуска».

Всякий раз, когда у меня возникали проблемы с обновлением методов службы WCF, один из них обычно решал все это:

1 Удалите все папки bin и obj (в частности, повторная сборка может сделать то же самое).

2 Служебный слой не будет автоматически обновляться (но будет работать!), Если только это:

[ServiceContract(Namespace = "")]

... устанавливается на это:

[ServiceContract(Namespace = "YourServiceLayerName")]

3 Щелкните правой кнопкой мыши на сервисной ссылке и выберите «обновить ...».

Иногда он снова прекращает отладку, но принудительная полная перестройка возвращает его в нормальное состояние.

Надеюсь, это кому-нибудь поможет.

...