C# 如何";添加服务参考“;在.NET标准项目中

C# 如何";添加服务参考“;在.NET标准项目中,c#,asp.net,.net,wcf,.net-standard,C#,Asp.net,.net,Wcf,.net Standard,我想在.NET标准项目中执行“添加服务引用”。(Visual Studio 2017) 我在NuGet上安装了“System.ServiceModel.Http”和“System.ServiceModel.Security”,以便能够访问WCF 但是,.NET标准项目中没有“添加服务引用”菜单项。 如何添加服务引用 它存在于.NET Framework项目中,但在.NET标准项目中不存在,因此它有问题。您可以通过将服务拖动到bin目录中手动添加它。我来到这里,希望解决一个稍微不同的问题。。。但也

我想在.NET标准项目中执行“添加服务引用”。(Visual Studio 2017)

我在NuGet上安装了“System.ServiceModel.Http”和“System.ServiceModel.Security”,以便能够访问WCF

但是,.NET标准项目中没有“添加服务引用”菜单项。 如何添加服务引用


它存在于.NET Framework项目中,但在.NET标准项目中不存在,因此它有问题。

您可以通过将服务拖动到bin目录中手动添加它。

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

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

如果你要添加一个新的类等,你会使用相同的“添加”菜单


这是在verion 15.5中添加的。有关详细信息,请参阅。

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

Visual Studio 2017社区v15.9.7

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

截图:


这些解决方案对我来说并不奏效。我在Unity 2019.1.10f和Visual Studio 2017中使用了这个。我发现您需要做的是将与WCF相关的dll添加到Unity项目中,然后生成服务客户端代理,并将其带到脚本中。下面一步一步

  • 创建一个新的Unity 3D项目,或者打开您的项目,然后在名为插件的资源下创建一个新文件夹
  • 导航到Unity的安装文件夹(例如C:\Program Files\Unity\Hub\Editor\2019.1.10f1)
  • 从安装文件夹中,导航到编辑器\Data\Mono\lib\Mono\2.0,在此文件夹中,您应该找到System.ServiceModel.dll,您需要将此文件复制到步骤1中创建的插件文件夹中
  • 现在生成服务客户机代理,您可以通过几种方法来实现,一种方法是使用svcuti,例如,在VS命令提示符下运行下面的命令来生成客户机代理类

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

  • 将上面的ClientProxy.cs文件复制到您的项目中,您可以在“资源”下的任意位置进行复制

  • 现在在项目中添加一个新的MonoBehavior脚本,比如WebClient.cs。您需要将其附加到场景中的某个游戏对象,才能运行下面的脚本
  • 打开WebClient.cs并添加代码以连接到新的代理服务,示例如下
  • 使用UnityEngine;
    使用System.ServiceModel;
    使用您的ClientProxyNamespace;
    公共类WebClient:MonoBehavior
    {
    void Start()
    {
    使用(ProxyClient=newproxyclient)(
    新的BasicHttpBinding(BasicHttpSecurityMode.Transport),
    新端点地址(“https://YourWebServiceDomain/Service.svc")))
    {
    var response=client.DesiredMethod();
    //对回应做任何事
    }    
    }
    }
    
    此练习基于

    环境:

    • (因为.net核心版本)
    我已经使用了ASMXWeb服务,但文档中说:它与WCF服务相同。我认为它适用于所有SOAP服务

  • 添加服务引用(使用WCF Web服务引用提供程序工具)
  • 添加包引用:

    1)浸泡以添加服务参考:

    项目>添加连接的服务

    将WCF服务引用添加到项目


    右键单击解决方案资源管理器中的
    引用
    ,选择
    添加服务引用
    。我的错,该版本中没有此类内容,您可能可以使用它?右键单击“引用”-->“添加服务引用”只能用于.NET Framework项目。在netstandard项目中,它不能。我尝试了“MicrosoftWCFWebServiceReferenceProvider”插件,其项目为Xamarin(.netStandard2.0)。然而,由于一个错误,这个插件不能正常工作。你误解了。“添加服务引用”通常按以下方式完成。