已添加具有相同键的项目.IIS WCF休息

sm.*_*lah 3 asp.net rest wcf iis-7

我正在使用我的Asp.net应用程序托管WCF Rest服务,并且启用了asp.net兼容模式,当我从visual studio运行应用程序时工作正常但是当我在IIS7中访问End Point时出现错误时说"一个项目已添加相同的密钥." 我的服务代码是.

  [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);
        }
}
Run Code Online (Sandbox Code Playgroud)

和全球ASCX是

   protected void Application_Start ()
        {
            RouteTable.Routes.Add(new ServiceRoute("Rest", new WebServiceHostFactory(), typeof(RestService)));

       }
Run Code Online (Sandbox Code Playgroud)

和web.config

     <system.serviceModel>
  <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>

        <standardEndpoints>
               <webHttpEndpoint>
                    <standardEndpoint name="" helpEnabled="true" automaticFormatSelectionEnabled="false"/>
               </webHttpEndpoint>


        </standardEndpoints>
      </system.serviceModel>
Run Code Online (Sandbox Code Playgroud)

注意在VS2010模式下每个工作正常但在托管IIS 7和访问http://example.com/rest/site/2 任何建议时都会出错 ?

sm.*_*lah 7

在IIS高级设置下然后启用协议我关闭了https,它工作正常. 在此输入图像描述