.Net Core - 无法连接 WCF 服务(在 Mac 上)

Posted

技术标签:

【中文标题】.Net Core - 无法连接 WCF 服务(在 Mac 上)【英文标题】:.Net Core - can't connect with WCF service (on Mac) 【发布时间】:2019-06-05 05:21:58 【问题描述】:

我目前正在我的 Mac 上开发 .NET Core 2.0 项目 (web api)。我正在尝试连接到 WCF 服务,所以我按照文档中的所有步骤操作:

https://docs.microsoft.com/en-us/dotnet/core/additional-tools/dotnet-svcutil-guide

当我尝试在终端上使用此命令时:

dotnet svcutil http://linkToTheService

我收到一个错误:

找不到与命令“dotnet-svcutil”匹配的可执行文件

我认为我应该在 Visual Studio(Mac 版)中拥有 Connected Service,但我也找不到它。因此,现在无法使用 VS for Mac 和 .NET CLI 连接到 WCF 服务。

我做错了吗?我还检查了这个网站: https://docs.microsoft.com/pl-pl/dotnet/core/tools/?tabs=netcore2x#cli-commands

并且找不到 dotnet 的 svcutil 命令。

我试图让它只在基本控制台应用程序上工作(执行与 Microsoft 文档中所写完全相同的步骤,但仍然出现此错误)

我也尝试全局安装 svcutil:

dotnet 工具安装 -g dotnet-svcutil

但是控制台抛出了另一个错误:

dotnet-svcutil 1.0.4 的包和项目组合不正确

【问题讨论】:

您是否全局安装了 svcutil? 你能告诉我怎么做吗?我认为如果我刚刚安装了 .net core 和最新的 VS for Mac,这个命令应该可以工作 检查文档docs.microsoft.com/en-us/dotnet/core/additional-tools/…,尤其是第 3 到 5 点 @Tseng 我做了所有这些步骤中写的:/。添加了带有 的新 ItemGroup(步骤 3)。然后编写 dotnet restore (第 4 步),没有任何问题。但是第 5 步命令“dotnet svcutil”不起作用,我收到“找不到与命令“dotnet-svcutil”匹配的可执行文件错误 似乎不支持全局安装。 [github.com/dotnet/wcf/issues/3071] 【参考方案1】:

这是一件让我大吃一惊的蠢事,但请确保您从与安装该工具的 proj 文件相同的目录发出命令。如果您不在正确的目录中,您将收到该错误。如果您的目录结构与 Microsoft 文档示例稍有不同,则很容易错过。

【讨论】:

我正在将这个命令写在好的目录中,我也尝试让它在新的控制台项目上工作,因为它是在 Microsoft 文档中编写的,我得到了同样的错误。

以上是关于.Net Core - 无法连接 WCF 服务(在 Mac 上)的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Visual Studio 2019 中将 WCF 服务添加到 .NET Core 项目?

Wcf 服务在 .NET Core 3.1 控制台应用程序中工作,但在 ASP.NET Core 3.1 Web API 中无法工作

连接的服务 WCF 不起作用 NET core 3.1

在 .NET Core 中从 .NET Framework 使用 WCF 服务

在 .net core 项目中按环境加载 WCF 服务

在 .Net Core 3.1 中使用 WCF 服务