📜  此服务的元数据发布当前已禁用 - C# (1)

📅  最后修改于: 2023-12-03 15:10:59.015000             🧑  作者: Mango

此服务的元数据发布当前已禁用 - C#

最近在使用 C# 开发时,我遇到了一个问题:我的服务的元数据发布被禁用了。在本文中,我将介绍此问题的详细信息以及如何解决它。

问题描述

当我尝试通过添加服务引用来从我的 C# 服务中访问元数据时,我遇到了以下错误消息:

此服务的元数据发布当前已禁用。如果您是服务的所有者,请启用元数据发行。 (如果您在发布此服务时未禁用元数据发行,请联系服务管理员。)

这意味着我的服务配置不允许元数据发布。由于这个限制,我无法从客户端应用程序中访问服务的元数据。这意味着我不能使用“添加服务引用”菜单项或其他工具从服务中生成客户端代理类。

解决方案

要解决此问题,我需要在我的服务配置文件中启用元数据发布。我可以通过以下步骤完成此操作:

  1. 打开我的服务的 web.config 文件

  2. 寻找 <system.serviceModel> 标记

  3. 在这个标记下添加一个 标记。

  4. 标记中添加以下属性:

    <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
    
  5. 保存 web.config 文件并重新启动我的服务

现在,在客户端应用程序中,我可以使用“添加服务引用”菜单项来添加我的服务,并生成客户端代理类。

结论

通过按照以上过程在我的服务配置文件中启用元数据发布,我成功地解决了该问题。希望这篇文章对那些遇到类似问题的人有所帮助。

参考文献
  1. 服务元数据
  2. 如何:为服务启用元数据发布