如何在 .NET Core 3.1 应用程序中添加 WCF 服务引用?

Posted

技术标签:

【中文标题】如何在 .NET Core 3.1 应用程序中添加 WCF 服务引用?【英文标题】:How to add a WCF service reference in a .NET Core 3.1 application? 【发布时间】:2020-07-31 04:48:52 【问题描述】:

我正在尝试将 WCF 服务引用添加到 .Net Core 3.1 Web API。我在管理员模式下使用 Visual Studio 2019。我收到以下错误:

Importing web service metadata ...
Number of service endpoints found: 1
Scaffolding service reference code ...
Error:Unable to generate deps.json, it may have been already generated.  You can specify the "-d" option before the tool name for diagnostic output (for example, "dotnet -d <toolname>": C:\Program Files\dotnet\sdk\3.1.101\Sdks\Microsoft.NET.Sdk\targets\GenerateDeps\GenerateDeps.proj

有人知道如何解决这个问题吗?

我已尝试安装 dotnet-svcutil,但出现以下错误:

软件包 dotnet-svcutil 2.0.1 与 netcoreapp3.1 (.NETCoreApp,Version=v3.1) 不兼容。 dotnet-svcutil 2.0.1 包支持:netcoreapp2.1 (.NETCoreApp,Version=v2.1) / any

【问题讨论】:

通过编写此命令安装 dotnet-svcutil ===> Install-Package dotnet-svcutil @burg.developer "软件包dotnet-svcutil 2.0.1 与netcoreapp3.1 (.NETCoreApp,Version=v3.1) 不兼容。软件包dotnet-svcutil 2.0.1 支持:netcoreapp2.1 (.NETCoreApp,Version=v2.1) / 任何" 你找到解决办法了吗? @Jay 不,我没有。 您有其他解决方案吗?如果有,请分享。 【参考方案1】:

Dotnet 发布了 2.0.3 版的预览版。与 dotnet Core 3.1 一起使用。 通过包管理器控制台安装它并重新打开项目。

dotnet tool install --global dotnet-svcutil --version 2.0.3-preview1.20574.1

在解决方案资源管理器中右键单击项目名称 -> 添加 -> 已连接服务,应提供 Microsoft WCF Web 服务参考提供程序

【讨论】:

【参考方案2】:

我遇到了同样的问题。

打开 Visual Studio 开发人员命令提示符并使用以下命令 “svcutil *.wsdl”或“svcutil https://somestire.svc

这将在该特定文件夹中创建类文件。

【讨论】:

以上是关于如何在 .NET Core 3.1 应用程序中添加 WCF 服务引用?的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET Core 3.1 MVC 如何让用户在注册时选择自己的角色?

如何在 asp.net core 3.1 中为每种类型的请求启用 Cors

ASP.NET Core 3.1 - 如何获取客户端的 IP 地址?

如何在 .NET Core 3.0 SDK 上构建多目标 .NET 5 和 .NET Core 3.1

将项目从 2.2 更新到 3.1(缺少程序集)或如何在 .NET Core 中使用 API POST 请求时,PostAsJsonAsync()在 .Net Core 3.1 中不起作用 [重复]

如何在 ASP.NET Core 3.1 中使用 Java?