gpt4 book ai didi

c# - WCF 服务客户端应用程序获取 "Object not set to an instance of an object"

转载 作者:太空狗 更新时间:2023-10-29 21:51:21 24 4
gpt4 key购买 nike

刚刚使用 IIS 7.5 在我公司的服务器上部署了我的 WCF 服务,一切似乎都运行良好。但是当我设置我的客户端应用程序并将服务器引用添加到服务器然后使用此代码时。

ServerReference.ServiceClient client = new ServerReference.ServiceClient();

var s = client.GetBrand("Audi", false);

我收到一个异常,提示“对象引用未设置到对象的实例”。s 对象不应该为空(我们在 localhost 上尝试了该服务,我们在它工作的同一个项目中拥有它)。

您查看了堆栈跟踪,它看起来像这样。

21.6.2012 16:16:29

对象引用未设置到对象的实例。

Server stack trace: 
at System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(Message reply, MessageFault fault, String action, MessageVersion version, FaultConverter faultConverter)
at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

有什么建议吗??P.S 托管 WCF 服务的 CPU 没有 Visual Studio ,所以我无法通过它进行调试

最佳答案

正如我在评论中所建议的那样,确保您可以使用 WcfTestClient 获取数据.这既确认了服务正在运行,也几乎对方法调用进行了单元测试,以确保它从客户端的角度运行。

其次,(除非你淡化它以在 SO 上发帖)使用 correct WCF call method以避免此类问题。一旦您引入依赖项,预测失败(无论是您的服务、客户端的互联网连接还是其他)总是一个好主意。

在不了解您的项目的任何其他信息的情况下,很难描述如何修复它。旧的 WSDL、配置错误的 *.config、服务器上未公开的端点以及其他问题等因素可能是问题的根源,但考虑到您所展示的内容,我不知道它可能是什么。

如果您能提供更多信息,我很乐意根据我可能有的任何更多建议更新我的答案。现在,看看 enabling WCF tracing在服务器上,以便您可以回顾日志并查看服务器端是否有任何问题(除了单步执行客户的调用和检查之外)。

关于c# - WCF 服务客户端应用程序获取 "Object not set to an instance of an object",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11142854/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com