gpt4 book ai didi

.net - 如何确定使用哪个 dotnet sdk 构建程序集

转载 作者:行者123 更新时间:2023-12-04 10:05:27 24 4
gpt4 key购买 nike

有没有一种方法可以确定使用哪个 dotnet SDK 构建程序集(针对 dotnet 核心)?

到目前为止,我们还没有使用 global.json 来指定使用哪个 dotnet SDK 来构建我们的程序集,这意味着使用最新的 SDK。
我们最近为新项目切换到 dotnet 3.1.x,但仍有很多项目针对 dotnet 2.1.x

我不确定在使用 dotnet 3.1.x SDK 构建面向 dotnet 2.1.x 的项目时会引入什么样的细微变化(甚至是错误?)

为确保我们将使用 global.json (为了定义构建时使用的 .NET Core SDK 版本)。并且,如果可能,将检查已经交付了多少使用更高 dotnet 核心 SDK 构建的程序集。甚至有可能吗?

最佳答案

注意:可能有更简单的方法可以做到这一点,但我目前不知道。我不知道有什么方法可以从现有的程序集中确定它。

使用 .NET Core SDK 构建时,会出现 NETCoreSdkVersion MSBuild 属性已设置。

您可以使用 BeforeTargets="CoreCompile" 创建一个目标生成包含该构建属性的源代码,以添加程序集级属性(您必须自己定义)。这将类似于 AssemblyInfo.g.cs已经生成。

恐怕我现在没有足够的时间来整理一个完整的例子——但是你可以看到一个自动化代码生成的例子 here .这是 targets 的一部分NuGet 包中的目录,以便依赖于该包的代码自动获取代码生成;你可以做类似的事情,或者如果一切都在同一个解决方案中,你可以使用 Directory.Build.targets或类似。

关于.net - 如何确定使用哪个 dotnet sdk 构建程序集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61607399/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com