Проблема (после сильных царапин на голове) теперь исправлена, поэтому я просто пытаюсь понять, что пошло не так с моими настройками WCF. У меня просто была проблема, когда я запустил ServiceModelReg.exe
для исправления некоторых сопоставлений обработчиков .svc
в IIS7 и начал получать ошибки HTTP 500 и записи в журнале событий, например:
WebHost failed to process a request.
Sender Information: System.ServiceModel.ServiceHostingEnvironment+HostingManager/33711845
Exception: System.ServiceModel.ServiceActivationException: The service '/newweb/Service.svc' cannot be activated due to an exception during compilation. The exception message is: Invalid element in configuration. The extension name 'enableWebScript' is not registered in the collection at system.serviceModel/extensions/behaviorExtensions. (C:\dev\AgentDesktop\ui\newweb\web.config line 174). ---> System.Configuration.ConfigurationErrorsException: Invalid element in configuration. The extension name 'enableWebScript' is not registered in the collection at system.serviceModel/extensions/behaviorExtensions. (C:\dev\AgentDesktop\ui\newweb\web.config line 174)
Я много гуглил, пытаясь найти ответ, и многие выглядело правдоподобно, но в итоге мне пришлось провести различие на machine.config
между здоровой и нездоровой машиной. Я был удивлен, увидев, что раздел system.serviceModel
моего файла machine.config
был удален, несмотря на то, что я запустил ServiceModelReg.exe -i
.
Может кто-нибудь объяснить, как или почему это было стерто? Мне просто интересно. Причина, по которой я думал, что это стоит опубликовать здесь, состоит в том, что я думаю, что здесь происходит больше, чем кажется на первый взгляд. У меня установлена VS 2010 бета 2 с .NET 4 бета. Мне интересно, применяются ли какие-либо machine.config
изменения, которые должны были произойти в .NET 2 machine.config , на самом деле , примененные к файлу .NET 4? Я прав?