当前位置: 代码迷 >> Web Service >> 服务里头调服务出错,求解
  详细解决方案

服务里头调服务出错,求解

热度:251   发布时间:2016-05-02 02:19:21.0
服务里面调服务出错,求解
 [WebMethod]
    public string AuditBack(string resultbk)
    {
        WeatherReference.WeatherWebServiceSoapClient weather = new WeatherReference.WeatherWebServiceSoapClient();
        string[] strs = weather.getSupportCity(resultbk);
        string str = string.Empty;
        for (uint i = 0; i < strs.Length; i++)
        {
            str += strs[i];
        }
        
        EReference.ESoapHeader esHeader = new EReference.ESoapHeader
        {
            SoftName = "@@@",
            ValidateCode = "4320ED3E604F2C1730D89BE0830B080B"
        };

        EReference.WebInfoServiceSoapClient wws = new Reference.WebInfoServiceSoapClient();
        return wws.Exchange(esHeader, resultbk);
    }


上面那是我写的一个方法,里面调用了两个服务,一个是天气服务可以正常调用,另一个服务是别人写的,调用就失败(用户名和密码确认正确),郁闷啊。两个服务用了同样的方法添加的引用~而且我用控制台程序用同样的方法添加后面的引用调用就可以了代码完全一样~~为什么,求指点。。
namespace MumuTest
{
    class Program
    {
        static void Main(string[] args)
        {
           WebInfoServiceSoapClient client = newWebInfoServiceSoapClient();
          EReference.ESoapHeader esHeader = new EReference.ESoapHeader
           {
            SoftName = "@@@",
            ValidateCode = "4320ED3E604F2C1730D89BE0830B080B"
           };
            str = client.Exchange(eheader, "");
            Console.WriteLine(str);
            Console.ReadLine();
        }
    }
}

下面是服务里调用时的错误:
System.ServiceModel.FaultException: System.Web.Services.Protocols.SoapException: 服务器无法处理请求。 ---&gt; System.MissingMethodException: 找不到方法:“System.String Epoint.ZtbMis_DYZTB.Bizlogic.JSGC.WebInfoService.GetRowGuidByFlyXml(System.Xml.XmlDocument, Int32, System.String ByRef, System.String ByRef)”。
   在 EpointWebService_DYZTB.DYWebInfoService.Exchange(String strXml)
   --- 内部异常堆栈跟踪的结尾 ---

Server stack trace: 
   在 System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
   在 System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   在 System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs)
   在 System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   在 System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]: 
   在 System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   在 System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   在 EpointReference.DYWebInfoServiceSoap.Exchange(ExchangeRequest request)
   在 EpointReference.DYWebInfoServiceSoapClient.EpointReference.DYWebInfoServiceSoap.Exchange(ExchangeRequest request) 位置 c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\website\02a0d807\69405187\App_WebReferences.3i_d6syv.0.cs:行号 221
   在 EpointReference.DYWebInfoServiceSoapClient.Exchange(EpointSoapHeader EpointSoapHeader, String strXml) 位置 c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\website\02a0d807\69405187\App_WebReferences.3i_d6syv.0.cs:行号 228
   在 Service.AuditBack(String resultbk) 位置 e:\WebSite\App_Code\Service.cs:行号 59
------解决方案--------------------
control panel ->service -> select your service -> property -> logon 
  相关解决方案