C# 无法处理该消息,因为该操作在WCF中无效或无法识别

C# 无法处理该消息,因为该操作在WCF中无效或无法识别,c#,C#,正如在标题中提到的,我一直得到的例外 “无法处理该消息,因为操作失败 \u0027http://tempuri.org/MegaService/GetData\u0027无效或无效 未被承认。” 让我们解释一下目前的情况 我有两个服务1)web服务(ASP.NET MVC web应用程序)和2)WCF服务,称为“MegaService”。web服务调用MegaService中的函数。它们都是现有的服务,运行良好 我在MegaService中添加了一些新功能,用于web服务调用的新功能。在我的本地

正如在标题中提到的,我一直得到的例外

“无法处理该消息,因为操作失败 \u0027http://tempuri.org/MegaService/GetData\u0027无效或无效 未被承认。”

让我们解释一下目前的情况

我有两个服务1)web服务(ASP.NET MVC web应用程序)和2)WCF服务,称为“MegaService”。web服务调用MegaService中的函数。它们都是现有的服务,运行良好

我在MegaService中添加了一些新功能,用于web服务调用的新功能。在我的本地机器(VisualStudio)上一切正常,这意味着我可以从web服务调用MegaService中的函数,并从调用中获取数据。我在visualstudio工作

要将这些新功能应用于服务器, 1) 我已经在web服务中更新了MegaService的引用(在Visual Studio中,就像右键单击服务引用和更新引用一样) 2) 复制本地计算机的visual studio项目的bin目录中的所有dll文件,并用它们替换服务器中的dll文件

这里有个问题。我仍然可以调用MegaService的现有(旧)函数,但当我尝试调用MegaService中更新的函数时,我最终得到了以下异常:“无法处理消息,因为操作\u0027http://tempuri.org/MegaService/GetData\u0027无效或无法识别。“

我已经更新了服务引用,并且我确认服务引用的dll文件也会根据文件的修改日期进行更新。我仍然可以与MegaService通信并调用现有函数,但我不能只调用MegaService的最新更新函数


你们能想出任何可能的问题和解决办法吗

您没有包含代码。 我不确定这是否有效,但您可以尝试:

配置文件:

在AppSettings下

 <appSettings>
    <add key="EndPointAddress" value="http://localhost:1920/Service1.svc"/>
  </appSettings>

在system.serviceModel下

<system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="BasicHttpBinding_IService1" />
            </basicHttpBinding>
        </bindings>
        <client>
            <endpoint address="http://localhost:1920/Service1.svc" binding="basicHttpBinding"
                bindingConfiguration="BasicHttpBinding_IService1" contract="ServiceReference1.IService1"
                name="BasicHttpBinding_IService1" />
        </client>
    </system.serviceModel>


确保您的端点地址绝对正确(服务器端)。

感谢您的快速回复。我真的很感激。要让您知道的一件事是,web服务可以调用MegaService的现有功能。所以你们认为这是终点的问题吗?因为我不能只调用最新更新的函数,但可以调用MegaService的旧函数,这意味着我仍然可以与MegaService@Vijunav VastivchAs通信,这是我为您所知的上述问题。你可以试试。更新服务后,请设置配置文件。也许您可以在此处添加代码以供更多参考。