Я установил, что aspNetCompatibilityEnabled имеет значение true, например:
Добавьте ссылку на:
System.ServiceModel.Activation
в вашем файле web.config:
<system.web>
<compilation debug="true" targetFramework="4.0">
<buildProviders>
<remove extension=".asmx"/>
<add extension=".asmx" type="System.ServiceModel.Activation.ServiceBuildProvider, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
</buildProviders>
</compilation>
</system.web>
<system.webServer>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated"/>
<add name="MyNewAsmxHandler" path="*.asmx" verb="*" type="System.ServiceModel.Activation.HttpHandler, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</handlers>
<validation validateIntegratedModeConfiguration="false" />
</system.webServer>
учитывайте изменения типа и publickeytoken в обработчике!
Это должно быть ' System.ServiceModel.Activation ' вместо'System.ServiceModel' и ' PublicKeyToken = 31bf3856ad364e35 ', поскольку Microsoft разделила их на отдельные сборки