C# WCF-已添加具有相同密钥的项

C# WCF-已添加具有相同密钥的项,c#,asp.net-mvc,wcf,iis,binding,C#,Asp.net Mvc,Wcf,Iis,Binding,尝试通过以下方式打开WCF WebService时,我不断遇到错误: System.ArgumentException 已添加具有相同密钥的项 System.ArgumentException:已创建具有相同密钥的项 补充。在System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult)时 结果)在 System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncRe

尝试通过以下方式打开WCF WebService时,我不断遇到错误:

System.ArgumentException 已添加具有相同密钥的项

System.ArgumentException:已创建具有相同密钥的项 补充。在System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult)时 结果)在 System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncResult 结果)在 System.ServiceModel.Activation.ServiceHttpModule.EndProcessRequest(IAsyncResult ar)在 System.Web.HttpApplication.AsyncEventExecutionStep.OnAsyncEventCompletion(IAsyncResult ar)

当我在本地主机上打开相同的WS时,一切都正常工作

我甚至不知道从哪里开始寻找问题的根源

IIS配置、已安装模块、项目代码是否存在问题

如何找出已添加具有相同密钥的项?即使它在Web.Config中?密码?在数据库中?在包含的模块中

问题仅出现在“/WS/myExchange.svc”上,网站的其他部分工作正常

高级设置:

站点绑定: 一个可能的原因是

  • 您的IIS web应用程序的高级设置在“启用的协议”中指示“http,https”
  • “默认网站”的“网站绑定”没有https绑定类型
  • 请参见检查:

  • 它可能是重复的
  • 还要检查它在IIS中是32位还是64位应用程序
  • 应用程序池框架
  • 问题解决了

    在Web.Config中,我必须添加system.serviceModel部分:

       <serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
    
    
    
    (我用printscreens更新了问题)不幸的是,您的建议似乎都不是原因:/Web.Config中没有重复项(因为本地主机和生产主机使用相同的Web.Configs,并且在本地主机上工作)。IIS中的应用程序严格来说是64位的,本地应用程序也是如此。您所说的应用程序池框架是什么意思?@Tadej在IIS上配置应用程序池时,您可以在2.0和4.0.Net框架之间进行选择。可选的2.0.NET框架也涵盖了3.5版。4.0涵盖了服务器上最新安装的版本,目前为4.7.3。NET5.0即将发布,这可能会增加第三个选项。可以在服务器管理器的“已安装角色”部分中选择或下载已安装的框架版本。为什么要下载?Thx解释…抱歉,无法从图像中读取绑定,您可以发布文本吗,谢谢?