Мне удалось решить эту проблему.Проблема была name="HoldingService"
.Несмотря на то, что файл .svc находится в том же проекте, что и файл .config, он должен быть полностью квалифицирован (т.е. name="Xxx.Xxxx.Web.Cdf.Holding.HoldingService"
).
Окончательный код выглядит следующим образом и работает отлично:
<system.serviceModel>
<services>
<service name="Xxx.Xxxx.Web.Cdf.Holding.HoldingService" behaviorConfiguration="SimpleServiceBehavior">
<endpoint address=""
binding="basicHttpBinding"
contract="Xxx.Xxxx.Schema.Service.Cdf.Holding.IHoldingService" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="SimpleServiceBehavior">
<serviceMetadata httpGetEnabled="True" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
Кроме того, я решил проблему с помощью «Редактора конфигурации служб Microsoft» (доступен через Tools
> WCF Service Configuration Editor
в VS2010).Я не знал, что это существовало, и вырезал вручную конфигурацию.
Спасибо Майклу за ваши предложения - они много убрали код.