Мое решение было основано на использовании .Net Core CLI, как в официальной документации здесь
- Создайте каталог с именем HelloSvcutil для вашего проекта и сделайте его текущим каталогом, какв следующем примере:
mkdir HelloSvcutil
cd HelloSvcutil
Создайте новый консольный проект C # в этом каталоге, используя команду dotnet new, следующим образом:
dotnet new console
Откройте файл проекта HelloSvcutil.csproj в вашем редакторе, отредактируйте элемент Project и добавьте dotnet-svcutil NuGet в качестве ссылки на инструмент CLI, используя следующий код:
<ItemGroup>
<DotNetCliToolReference Include="dotnet-svcutil" Version="1.0.*" />
</ItemGroup>
Восстановите пакет dotnet-svcutil с помощью команды dotnet restore следующим образом:
dotnet restore
Запустите dotnet с командой svcutil, чтобы сгенерировать справочный файл веб-службы следующим образом: (используйте ссылку на веб-службу, в моем случае:
http://localhost.com/BanqueWS?wsdl)
dotnet svcutil http://contoso.com/SayHello.svc
сгенерированный файл сохраняется как HelloSvcutil / ServiceReference1 / Reference.cs.Инструмент dotnet_svcutil также добавляет в проект соответствующие пакеты WCF, требуемые прокси-кодом, в качестве ссылок на пакеты.
Восстановите пакеты WCF с помощью команды dotnet restore следующим образом:
dotnet restore
Откройте файл Program.cs в вашем редакторе, отредактируйте метод Main () и замените автоматически сгенерированный код следующим кодом для вызова веб-службы:
static void Main(string[] args)
{
var client = new SayHelloClient();
Console.WriteLine(client.HelloAsync("dotnet-svcutil").Result);
}
Запустите приложение с помощью команды запуска dotnet следующим образом:
запуск dotnet