问题标签 [dotnet-sdk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 是否有可能在源代码中抑制 sonarcloud 的警告?
我面临一些 sonarcloud 警告的问题,这些警告在最近的将来不会修复(现在应该被禁用)。
在 CI 上构建期间,sonarcloud 会发出警告。没有任何本地分析器。有没有办法在项目、文件、类和/或方法级别的源代码中抑制某些特定警告?
官方文档没有太大帮助,至少我没有找到解决方案。
sonarcloud 是否尊重一些
或其他基于属性的方法或一些全局设置。
msbuild - IntermediateAssembly 最初设置在哪里?
我想让你问一下 IntermediateAssembly 最初设置在哪里。
我问我想优化我的作业以仅在初始化 IntermediateAssembly后应用的原因。
考虑以下比较:
在dotnet sdk中,我找不到最初设置 IntermediateAssembly 的参考。
.net-core - 如何仅使用本地包源在 Linux 上构建具有 win-x64 运行时的 .NET Core 3.1 控制台应用程序?
我有一个特殊的用例,我需要在离线时构建一个干净的存储库。我被允许附加本地 nuget 提要并在本地提供标准 docker 映像。
构建容器基于 linux。
我正在寻找的解决方案涉及使用 dotnet restore 准备本地 nuget 提要,然后在 linux 容器内使用指定的 nuget 源执行 dotnet 构建。
我正在为 win-x64 运行时构建。
环境:
预期结果:
在 docker linux 容器内成功构建。
实际结果:
error NU1101: Unable to find package Microsoft.NETCore.App.Host.win-x64. No packages exist with this id in source(s): local
重现步骤:
- 在开发机器上(Win10 1909,使用 dotnet SDK 3.1.302):
mkdir dotnetTest
cd dotnetTest
dotnet new console
dotnet restore --runtime win-x64 --packages $pwd\nuget
- 此时,nuget 文件夹包含以下内容(因为这只是一个最小示例):
microsoft.aspnetcore.app.runtime.win-x64
microsoft.netcore.app.runtime.win-x64
microsoft.windowsdesktop.app.runtime.win-x64
docker run --rm -it -v $pwd`:/repo -v $pwd\nuget`:/nuget mcr.microsoft.com/dotnet/core/sdk:3.1.302-alpine3.12
- 码头集装箱内部:
dotnet nuget disable source nuget.org
dotnet nuget add source /nuget --name local
cd repo
dotnet build --runtime win-x64
最后一个命令导致:
有趣的部分突出显示:error NU1101: Unable to find package Microsoft.NETCore.App.Host.win-x64. No packages exist with this id in source(s): local
我还应该提到,启动一个新容器并运行,cd repo
然后dotnet build --runtime win-x64
运行没有问题(丢失Microsoft.NETCore.App.Host.win-x64
的内容已被下载)。
经测试的解决方法:
我曾尝试"-p:DisableImplicitNuGetFallbackFolder=true"
在开发人员机器上使用 dotnet restore 时:
dotnet restore --runtime win-x64 --packages $pwd\nuget "-p:DisableImplicitNuGetFallbackFolder=true"
.
在这种情况下,结果没有区别。
可能的解决方法:
从(另一个)docker 容器中准备本地 nuget 提要,而不是直接在开发计算机上。然而,这更加复杂,如果不需要(可能需要?)应该避免。
问题:
- 是否可以使用从 Windows 机器准备的本地 nuget 提要从 Linux 构建一个 win-x64 控制台应用程序(我上面的方法)?
- 任何其他解决方法或指导来完成我尝试做的事情?
c# - .NET SDK 未正确安装
我在安装 .NET SDK 时遇到问题,起初当我进入 Visual Studio 2019 时,它说我缺少 dotnet 运行时 sdk,所以我按照要求安装了它并重新启动了我的计算机。然后我再次进入 Visual Studio 2019,出现了同样的问题,我进入命令提示符并输入dotnet --list-sdks
并显示no sdks
. 我已经安装了所有的运行时,但它说没有找到 SDK。图片 。我尝试重新安装 sdks,但同样的问题仍然存在。我什至甚至重新安装了 IIS。如果不解决此问题,我将无能为力,请尽快提供帮助!
c# - 未找到 Visual Studio 2019 .NET SDK
在https://dotnet.microsoft.com/learn/dotnet/hello-world-tutorial/install遇到的问题操作系统:Windows Home x64 版本:3.1.401 Visual Studio 2019
我在安装 .NET SDK 时遇到问题,起初当我进入 Visual Studio 2019 时,它说我缺少 .NET 运行时 SDK,所以我按照它的要求安装了它并重新启动了我的计算机。然后我再次进入 Visual Studio 2019,出现了同样的问题,我进入命令提示符并输入dotnet --list-sdks
,它没有显示任何 SDK。我已安装所有运行时,但它显示“未找到 SDK”。我尝试重新安装 SDK,但同样的问题仍然存在。我什至甚至重新安装了 IIS。每当我制作一个简单的控制台应用程序时,它都会打开它,但是当我查看解决方案资源管理器选项卡时,它说有 0 个项目,当我去运行它时,它只是说“附加”,原来是“运行”,并且快捷键也不再起作用来运行它。
c# - 如何将 Microsoft.DotNet.Arcade.Sdk 安装到 dotnet sdk 文件夹中?
我知道这听起来像是一个愚蠢的问题,但我正在尝试构建一个需要将 Microsoft.DotNet.Arcade.Sdk 6.0.0 安装在“C:\Program Files\dotnet\sdk\5.0.101\ Sdks\Microsoft.DotNet.Arcade.Sdk\Sdk”。
我可以在“Sdks”文件夹中看到“其他”sdk,但看不到“arcade”sdk。
我似乎在https://github.com/dotnet/arcade找不到任何关于如何将此 SDK 安装到我的计算机上的文档。
我确实下载了解决方案并能够构建解决方案,但没有安装它,也没有构建安装程序。
.net-core - `dotnet new` 在包名称上抛出 401 未经授权而没有版本
所以我有一个发布到 nuget的dotnet 模板,但只有在使用如下版本运行 install 命令时才会安装它:当我在没有版本的情况下运行安装命令时,它给了我一个未经授权的 401。我需要将某种设置添加到我的 csproj 中吗?我 99% 我以前在没有版本的情况下做过这个,它运行得很好。dotnet new --install Foundation.Api::0.3.0
dotnet new --install Foundation.Api
这是完整的错误:
.net-core - 如何通过 MSBuild 包目标将 ref 程序集添加到 NuGet 包?
我正在通过TargetFrameworks开发一个针对 net35 (.NET Framework 3.5)、netstandard2.0 (.NET Standard 2.0) 和 netcoreapp3.1 (.NET Core 3.1) 的库。
对于其中一项功能,该库在内部使用WPF,因此此功能仅在面向 net35 (.NET Framework 3.5) 和 netcoreapp3.1 (.NET Core 3.1) 时有效。
我使用 MSBuild包目标为我的库创建 NuGet 包,但由于 WPF 用于 netcoreapp3.1,我还为 netcoreapp3.1 创建参考程序集,以便非 Windows 平台上的消费者在构建项目时使用该参考程序集,如解释的那样在这个PackageReference 支持部分。
c# - 如何修复“错误 MSB4236:找不到指定的 SDK 'Microsoft.NET.Sdk'。”?
我们已经寻找解决这个问题的方法,但没有成功……网上报告了很多类似的错误,但没有一个建议奏效。
我们在 tfs 中有一个 Web 作业项目,可以在本地编译,但是当我们尝试在 devops 中构建它时,它会失败并出现错误:
该项目针对 .NETframework 4.8。
(如果我编辑项目文件,第一行显示这是错误提到的行号(0,0):
<Project Sdk="Microsoft.NET.Sdk;Microsoft.NET.Sdk.Publish"\>
如何找出它正在寻找的 Microsoft.net.sdk 版本?devops 记录的错误没有给我我可以看到的信息。
我查看了该项目以查看它引用的内容,但它没有任何引用,而是它具有包含程序集和包的依赖项,它们都没有引用任何 Microsoft.NET.Sdk。
我们已经安装了 .NET Core 3.1.405(以及其他)和 MS .Net Framework 4.8 开发人员包,但仍然没有运气。
任何关于下一步尝试的方向都值得赞赏。