我在解决方案中有一个控制台应用程序和 WCF 服务应用程序。我想从控制台应用程序调用 WCF 应用程序。我向控制台应用程序项目添加了服务引用,并尝试引用该服务,但未找到其命名空间。我正在使用 VS 2010。任何想法我做错了什么?
问问题
6588 次
3 回答
3
添加服务引用时,它与程序集引用不同。
当您可以添加服务引用时,您不一定知道服务的内部细节。在许多情况下,它不是您的服务,而是另一家公司的服务。服务引用仅定义合同。
因此,您不会使用您在服务端声明的名称空间或对象找到您的服务。相反,您的客户实际上是根据合同定义自己的客户端对象。添加引用时,您可以选择将其添加到的命名空间。
在 Visual Studio 中,单击解决方案资源管理器中的客户端项目并启用“显示所有文件”选项。然后您应该能够浏览服务参考并找到添加服务参考向导自动生成的隐藏文件。通过检查这些文件,您将看到它在哪个命名空间中声明。
于 2012-09-06T23:17:30.117 回答
0
在 Web 服务消费方面,控制台应用程序与其他应用程序类型没有什么特别之处。
请参阅如何使用 Web 服务。
于 2012-09-07T15:15:36.743 回答
0
最近我也面临同样的问题。我做了以下步骤。1) 打开 Reference.cs 文件 2) 您的错误可能如下所示
Error 3 The type name 'ServiceReference1' does not exist in the type 'LongOperationClient.ServiceReference1.LongOperationClient'
现在在 Reference.cs 文件(自动生成)中删除“NamespaceOfProject.serviceReference1”
3)保存并构建它对我有用。问候,赫曼特
于 2013-06-04T08:46:38.443 回答