Я создал спокойный веб-сервис в WCF. Все отлично работает, если я размещаю его через IISExpress в Visual Studio. Но после развертывания на локальном IIS возникает ошибка 404.17 NOT FOUND при попытке доступа к службе .svc.
Говорится:
«Не найдено Запрошенное содержимое выглядит как сценарий и не будет обрабатываться обработчиком статического файла»
Я уже пробовал эти решения:
Запустить командную строку - Пуск - cmd.exe cd C: \ Windows \ Microsoft.NET \ Framework64 [Dot Net Version] aspnet_regiis -ir
а также
«C: \ Windows \ Microsoft.NET \ Framework \ v3.0 \ Windows Communication Foundation» и выполните «servicemodelreg -i», чтобы установить их вручную.
, который ничего не изменил.
Я почти уверен, что это проблема конфигурации, но не могу ее решить, поскольку я совершенно неопытен в этом.
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
</configSections>
<appSettings/>
<system.web>
<compilation debug="true" targetFramework="4.6.2"/>
<httpRuntime/>
<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>
</system.web>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior">
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="webHttpServiceBehavior">
<webHttp/>
</behavior>
</endpointBehaviors>
</behaviors>
<services>
<service name="MyService.Service" behaviorConfiguration="ServiceBehavior">
<host>
<baseAddresses>
<add baseAddress="http://localhost/"/>
</baseAddresses>
</host>
<endpoint binding="webHttpBinding" contract="MyService.IMyService" behaviorConfiguration="webHttpServiceBehavior"/>
</service>
</services>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true"/>
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
<directoryBrowse enabled="true"/>
</system.webServer>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="mssqllocaldb"/>
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer"/>
</providers>
</entityFramework>
<connectionStrings>
<add name="MyEntities" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string="data source=localhost\myDB;initial catalog=DB;integrated security=True;multipleactiveresultsets=True;application name=EntityFramework"" providerName="System.Data.EntityClient"/>
</connectionStrings>
</configuration>
Я очень расстроен, пытаясь потратить несколько дней, потому что разработка этого сервиса была очень интересной, пока развертывание не провалилось полностью.
Буду очень признателен за любые подсказки.
Спасибо!