【问题标题】:How to check if a workload is installed on client's visual studio如何检查客户端的 visual studio 上是否安装了工作负载
【发布时间】:2022-12-10 17:26:53
【问题描述】:

我正在开发一个针对 Blazor wasm 的类库,为了正常工作,客户端需要在他们的 visual studio 实例上安装 wasm-tools 工作负载。

有什么方法可以检查他们是否安装了它,如果没有安装则产生某种错误消息?

谢谢你。

【问题讨论】:

    标签: c# visual-studio msbuild blazor-webassembly


    【解决方案1】:

    据我所知,wasm-tools 工作负载是通过在管理命令 shell 中使用 dotnet 命令行 (dotnet workload install wasm-tools) 安装的。请参阅此文档:.NET WebAssembly build tools.

    因此,如果您使用上面的命令行,您可能会看到以下消息,例如:

    已成功安装工作负载 wasm-tools。

    如果您看到此消息,则可以确认工作负载已成功安装。

    但是对于你的问题,也许你可以考虑使用 dotnet 命令(dotnet workload list) 喜欢

    dotnet workload list

    检查它是否列在 Installed Workload 列表中,例如:

    【讨论】:

      【解决方案2】:

      Visual Studio 安装程序支持将安装配置导出和导入为 .vsconfig 文件。从 VS2019 开始,可以将 .vsconfig 文件作为 .sln 文件的对等文件添加到解决方案文件夹中,Visual Studio 将使用 .vsconfig 检查是否缺少安装程序项。

      请参阅“Import or export installation configurations”,尤其是“Automatically install missing components”部分。

      .vsconfig 存储组件和工作负载的 ID。 ID 记录在“Visual Studio workload and component IDs”中。

      Visual Studio 工作负载和 .Net SDK 工作负载是不同的东西,但安装程序的工作负载 ID 似乎映射到 .Net SDK 工作负载。

      例如安装程序 ID wasm.toolswasm.tools.net6 似乎分别映射到 SDK 工作负载 wasm-toolswasm-tools-net6。但是你需要测试来确认。

      .sln 文件旁边的 .vsconfig 文件不需要完整。您可以编辑该文件以去除除特别感兴趣的 ID 以外的所有内容。或者,您可以创建最小的 Visual Studio 安装,它仍然能够构建您的解决方案并导出其配置。

      此方法利用了 Windows 版本的 Visual Studio IDE 的一项功能。

      【讨论】:

        猜你喜欢
        • 2020-02-04
        • 2020-01-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-02-20
        • 1970-01-01
        相关资源
        最近更新 更多