Используйте WebServiceHost2Factory и WebProtocolException для обработки ошибок
Большая часть построения API обеспечивает адекватную обработку ошибок, чтобы помочь пользователю реализовать ваш API.Вплоть до выпуска WebServiceHost2Factory возвращение соответствующего HTTP-кода ответа и сообщения было рутиной.К счастью для нас, мы можем быстро и легко достичь этой цели, используя классы WebServiceHost2Factory и WebProtocoException.
Приведенный выше текст взят из следующей ссылки
Ниже приведена справка по устранению неполадоквашу проблему можно найти по следующей ссылке .
Ошибка синтаксического анализатора: тип службы не может быть загружен во время компиляции
Вы можете получить следующее сообщение об ошибке при навигации поСлужба WCF (файл .svc) из браузера:
Не удалось загрузить тип CLR «XXXX» во время компиляции службы.Убедитесь, что этот тип определен либо в исходном файле, расположенном в каталоге приложения \ App_Code, либо в скомпилированной сборке, расположенной в каталоге приложения \ bin, либо в сборке, установленной в глобальном кэше сборок.Обратите внимание, что имя типа чувствительно к регистру и что каталоги, такие как \ App_Code и \ bin, должны находиться в корневом каталоге приложения и не могут быть вложены в подкаталоги.
Сообщение об ошибке само по себе довольно объяснимо.Тем не менее, я все еще хочу указать на различные ситуации, когда это может произойти.Вот формат служебной директивы файла .svc:
<%@Service language=c# Class="<Managed Type>" [Other attributes] %>
Вот возможные причины, по которым это может произойти:
- Указанная строка для атрибута «Class»не представляет существующий тип CLR.Иногда это может быть связано с опечаткой.Эта строка чувствительна к регистру.Также, если вы копируете это из MS-Word, кавычки могут быть некоторыми специальными символами Unicode вместо реальных кавычек ASCII.
- Если у вас есть сборка (содержащая тип службы) в каталоге \ bin, возможно, вы не создали виртуальный каталог, так что его корневой каталог содержит \ bin в качестве непосредственного подкаталога.
- Если в кодовом файле \ App_Code указан ваш тип, это может быть связано с той же причиной, что и выше.