如何"添加服务参考"在.NET标准项目

时间:2017-11-21 12:13:38

标签: c# asp.net .net wcf .net-standard

我想做"添加服务参考"在.NET标准项目中。(Visual Studio 2017)

我安装了" System.ServiceModel.Http"和" System.ServiceModel.Security"在NuGet上,以便使WCF访问成为可能。

然而,没有"添加服务参考" .NET Standard项目中的菜单项。 如何添加服务引用?

它存在于.NET Framework项目中,但它在.NET Standard项目中不存在,因此遇到了麻烦。

6 个答案:

答案 0 :(得分:3)

我来到这里希望解决一个稍微不同的问题...但是也许回答你的问题;

我必须将VS2017更新到最新版本(我现在在15.5.2),然后; 右键单击项目>>添加>>连接服务,然后单击" Microsoft WCF Web服务参考提供程序"。提供的对话框非常类似于框架"添加服务参考"选项。

它是相同的"添加"如果你要添加一个新类等,你会使用的菜单......

这是在第15.5条中添加的。有关详细信息,请参阅WCF on github

答案 1 :(得分:1)

Visual Studio 2017社区v15.9.7

解决方案资源管理器->右键单击依赖关系->添加连接的服务

ScreenShot:

答案 2 :(得分:0)

实际上,您可以右键单击,转到“添加连接的服务”,然后单击“ Microsoft WCF Web服务参考提供程序”,它应与“添加服务”相同。

答案 3 :(得分:0)

这些解决方案对我而言并不真正有用。我在Unity 2019.1.10f和Visual Studio 2017中使用了此工具。我发现您需要做的是将与WCF相关的dll添加到Unity项目中,然后生成服务客户端代理并将其带到脚本中。请按以下步骤操作。

  1. 创建一个新的Unity 3D项目,或打开您的项目,然后在Assets下创建一个名为Plugins的新文件夹。
  2. 导航到Unity的安装文件夹(例如C:\ Program Files \ Unity \ Hub \ Editor \ 2019.1.10f1)。
  3. 从安装文件夹中,导航到Editor \ Data \ Mono \ lib \ mono \ 2.0,在此文件夹中,您应该找到System.ServiceModel.dll,需要将此文件复制到在步骤1中创建的Plugins文件夹中
  4. 现在生成服务客户端代理,您可以通过几种方式执行此操作,一种选择是使用svcutil,例如,在VS命令提示符下运行以下命令以生成客户端代理类。

    svcutil -out:c:\temp\ClientProxy.cs https://[YourWebServiceDomain]/[Service].svc

  5. 将上面的ClientProxy.cs文件复制到资产中您想要的任何位置。

  6. 现在将一个新的Monobehaviour脚本(例如WebClient.cs)添加到您的项目中。您需要将其附加到场景中的某些游戏对象上,才能运行以下脚本。
  7. 打开WebClient.cs并添加代码以连接到新的代理服务,如下例所示。
using UnityEngine;
using System.ServiceModel;
using YourClientProxyNamespace;

public class WebClient : MonoBehavior
{
  void Start()
  {
    ProxyClient client = new ProxyClient(
        new BasicHttpBinding(BasicHttpSecurityMode.Transport),
        new EndpointAddress("https://YourWebServiceDomain/Service.svc"));

    var response = client.DesiredMethod();

    // Do whatever with the response
  }
}

答案 4 :(得分:0)

本练习基于Use the WCF Web Service Reference Provider Tool

环境:

我使用了 asmx Web 服务,但文档说:它与 WCF 服务相同。我认为它适用于所有 SOAP 服务。

  1. 添加服务引用(使用 WCF Web 服务引用提供程序工具)。
  2. 添加包引用:

1) 添加服务引用的步骤:

项目>添加连接的服务

Add connected service

向项目添加 WCF 服务引用。

Add WCF reference

Discover

Naming

Package

答案 5 :(得分:-4)

您可以通过将服务拖到bin目录

手动添加它