如何在客户端项目中添加服务引用?

我是WCF的新手所以请说明你是否发现了我在这里完全错误的事情。 我创建了一个WCF服务项目(我的服务类是从ServiceBase类中提取的),端点地址绑定设置为basicHttpBinding。 现在我需要创建一个可以从此服务调用某些API的客户端应用程序。 我的问题是,在我的客户端应用程序中,如何添加对该服务的服务引用。 我是否需要首先在IIS下发布此服务(这意味着我也必须在计算机上使用IIS),或者是否还有其他一些添加服务引用的方法。

您需要运行服务,并发布元数据。 这可以是IIS,也可以是任何其他有效的托管选项 。

我经常编写一个简单的控制台应用程序来自我托管WCF服务,正是出于这个原因。 它使调试变得非常容易,并且在开发的早期阶段更新服务引用,并且可以在同时处理客户端和服务器时显着简化工作。

您不必在IIS下发布它,使用WCF,您可以在控制台应用程序或Windows窗体应用程序或Windows服务或IIS下托管您的服务。

在您的客户端应用程序中,您只需右键单击并添加服务引用即可。

更新:
简单的WCF示例

通常,您将在IIS的最终位置托管您的WCF服务(因为它也可以为您确定URL),但是,您也可以直接从Visual Studio运行它,然后在您的客户端,在Visual Studio中运行它可以右键单击“引用”并选择“添加服务引用”,并将其指向您的WCF服务,无论它在何处运行。

然后,应用程序将为其提供从WSDL构建的WCF客户端。

请注意,它还将在app.config中为该服务设置该URL,因此,如果您没有在其最终生产URL中托管该服务,则在将其移至生产时,您必须在客户端中更改该URL。

所以更直接地回答你的问题; 是的,当您从客户端应用程序“添加服务引用”时,您的服务应该正在运行。