Я принимаю службу WCF Rest с моим приложением Asp.net, а режим совместимости asp.net включен, он работает нормально , когда я запускаю приложение из visual studio, но когда я в IIS7 получаю ошибку при доступе к End Point говорит: «Элемент с тем же ключом уже добавлен». MY Service Cod есть.Элемент с тем же ключом уже добавлен. IIS WCF Rest
[ServiceContract]
[AspNetCompatibilityRequirements
(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class RestService
{
[OperationContract]
[WebGet(UriTemplate = "Site/{Id}", BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
public Site GetSite(string Id)
{
return new Site(1);
}
}
и глобальное ASCX является
protected void Application_Start()
{
RouteTable.Routes.Add(new ServiceRoute("Rest", new WebServiceHostFactory(), typeof(RestService)));
}
и web.config
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
<standardEndpoints>
<webHttpEndpoint>
<standardEndpoint name="" helpEnabled="true" automaticFormatSelectionEnabled="false"/>
</webHttpEndpoint>
</standardEndpoints>
</system.serviceModel>
Примечание Каждые вещи работают нормально в режиме VS2010, но получаю ошибку в то время как хостинг IIS 7 и доступ к http://example.com/rest/site/2 любое предложение Пожалуйста?
Это выигрышный ответ. Я был уложен по той же неприятной проблеме в течение часа, наткнулся на сообщение Абдуллы и удалил протокол https, и внезапно все сработало отлично. – markaaronky