Решение было другим для меня.Это может быть очевидной информацией для людей, которые даже мимолетно знакомы с развитием WCF.Но в надежде, что это поможет другим новичкам, борющимся с той же проблемой, вот что я понял.
Оказалось, что приложение, которое я отлаживал, вообще не нуждалось в WcfSvcHost.exe.WcfSvcHost.exe для автономных приложений WCF.В этом приложении использовались сервисы, предоставляемые в качестве конечной точки в веб-приложении.
В конечном итоге мне стало ясно следующее: во-первых, появится этот экран:
Я заметил, что это отображается как отдельный процесс для WcfSvcHost.exe в диспетчере задач Windows.Это объяснило, почему я не мог заставить отладчик работать без сбоев, даже когда я настроил параметры исключений, чтобы они ломались при возникновении исключения System.Reflection.ReflectionTypeLoadException.Visual Studio не ломался, потому что он не был присоединен к процессу WcfSvcHost.exe.Он был присоединен к процессу IISExpress.exe, на котором выполнялось мое приложение.Но процесс WcfSvcHost.exe вызывал исключение.
Когда я нажимал кнопку OK в сообщении об ошибке выше, процесс WcfSvcHost.exe завершался и больше не появлялся в диспетчере задач.Но приложение все еще работало нормально.Так ясно, что происходящее не нужно.Быстрая проверка с другим разработчиком подтвердила, что приложению не требуются автономные службы WCF.
По какой-то причине Visual Studio все равно запускает WcfSvcHost.exe.И это наконец привело меня к этому ответу .Проекты библиотеки классов WCF можно настроить для запуска WcfSvcHost.exe при каждом запуске отладки.
Ответ заключается в том, чтобы щелкнуть правой кнопкой мыши каждый проект библиотеки классов WCF, выбрать «Свойства» и перейти на вкладку «Параметры WCF».Затем снимите флажок Запустить узел службы WCF при отладке другого проекта в том же решении .
Это необходимо сделать для всех библиотек классов WCF в вашем решении.Я не был уверен, какие из них какие, поэтому я просто посмотрел на Свойства для каждой библиотеки классов и исправил те, которые имели вкладку Параметры WCF.