Я использую маршрутизацию ASP.Net для размещения службы на 127.0.0.1
(в Win8 + IIS8), например
WebServiceHostFactory factory = new WebServiceHostFactory();
RouteTable.Routes.Add(new ServiceRoute("Services/ABC/", factory, typeof(ABCService)));
И поведение по умолчанию для конечных точек, таких как
<standardEndpoints>
<webHttpEndpoint>
<standardEndpoint helpEnabled="false"
automaticFormatSelectionEnabled="true"
faultExceptionEnabled="false"
crossDomainScriptAccessEnabled="true"
defaultOutgoingResponseFormat="Json"
hostNameComparisonMode="StrongWildcard"
transferMode="Streamed">
<security mode="None" />
</standardEndpoint>
</webHttpEndpoint>
</standardEndpoints>
Эти настройки вызывают ошибку A binding instance has already been associated to listen URI 'http://<MachineName>/Services/IMAPI/'. If two endpoints want to share the same ListenUri, they must also share the same binding object instance. The two conflicting endpoints were either specified in AddServiceEndpoint() calls, in a config file, or a combination of AddServiceEndpoint() and config.
Я не уверен в этой ошибке, почему она возникает, поскольку я не разбираюсь в WCF, но эта ошибка продолжает удалять конфигурацию web.config стандартной конечной точки.