【问题标题】:.NET Core WCF: How to Upgrade 'dotnet-svcutil' Version.NET Core WCF:如何升级“dotnet-svcutil”版本
【发布时间】:2019-10-08 01:43:26
【问题描述】:

Visual Studio 2017
.NET Core 2.2
参考 WCF .NET Framework (4.6.1)

更新服务参考时,
这些行出现在 reference.cs 文件的顶部:

    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("dotnet-svcutil", "1.0.0.1")]

如何升级 dotnet-svcutil 的版本?

【问题讨论】:

    标签: wcf .net-core visual-studio-2017 svcutil.exe


    【解决方案1】:

    WCF dotnet-svcutil工具是vs2017(Core1.0 SDK)提供的,默认使用1.0版本生成客户端代理类。
    VS2019已经内置了最新版本的dotnet-svcutil工具(通过添加服务引用调用服务),以及Core SDK(2.0+) 我们也可以使用 Nuget 包管理器来安装它,然后手动生成客户端代理类。

    dotnet tool install --global dotnet-svcutil --version 2.0.0
    dotnet-svcutil http://contoso.com/SayHello.svc -d D:\
    

    结果。 请参考以下链接。
    https://www.nuget.org/packages/dotnet-svcutil/
    https://docs.microsoft.com/en-us/dotnet/core/additional-tools/dotnet-svcutil-guide?tabs=dotnetsvcutil2x
    如果有什么可以帮助的,请随时告诉我。

    【讨论】:

    • 你确定是 dotnet-svcutil 而不是 dotnet-svcutil.xmlserializer
    • 如果你用Nuget安装Dotnet-Svcutil工具,然后手动生成客户端类,装饰属性会不会变成你安装的Dotnet-Svcutil工具版本?在我这边,它按预期工作。或者简单一点,直接下载vs2019即可。
    • 我安装了第 2 版,但在参考文件中,所有内容都保留在第 1 版中
    • vs2017默认使用dotnet-svcutil工具1.0版本。您是否通过命令手动生成客户端代理类?如果是这样,您可以尝试通过在 VS 的开发人员命令提示符中键入以下命令来验证实际版本。 dotnet-svcutil --版本。建议你下载内置2.0版本的vs2019。
    • 如果我们不安装vs2019,我们需要先用上面的命令安装工具,然后在VS的Developer Command Prompt窗口中查看版本并手动生成客户端代理类,因为vs2017默认使用 1.0 版本的工具。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-03
    • 2022-11-23
    • 2022-09-30
    相关资源
    最近更新 更多