gpt4 book ai didi

c# - 如何在新创建的 .NET Core 2.0 Web 应用程序中以 .NET Standard 2.0 为目标?

转载 作者:太空狗 更新时间:2023-10-29 20:52:40 24 4
gpt4 key购买 nike

我刚刚使用 dotnet new web 创建了一个新项目。我的 Google-foo 可能让我失望了,但我没有找到与我的答案相关的任何内容(如果我遗漏了一些明显的东西,请链接到另一个 SO 答案或相关文档)。

如果我想确保这个新项目符合 .NET Standard 2.0,我现在该怎么做?

最佳答案

It is not inherently possible to run a netstandard project as an executable. Since netstandard was designed to be used for libraries.

为了完全在 netstandard2.0 中开发您的 Web 应用程序,您必须创建一个以 .NET Core 或 .NET Framework 为目标的单独项目来执行您的库,其中包含您的 Web 应用程序(使用 .NET Standard 开发)

1. Executable Project (ex: console app)
-- Target Framework: netcoreapp2.0 / net462

2. Web Application Project (library)
-- Target Framework: netstandard2.0

您可以使用以下步骤更改项目的目标框架。

第 1 步。针对所需的框架

  1. 右键单击您的项目并选择 Edit *****.csproj

  2. .csproj文件中,需要将目标框架替换为.NET Framework。

示例 .csproj 文件:

<Project Sdk="Microsoft.NET.Sdk.Web"> //<-- note the .Web for the web template
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>
</Project>

对于 Target Framework Moniker (TFM) 的列表(即 net47netstandard2.0netcoreapp2.0 等*) 你可以查看这个链接: https://learn.microsoft.com/en-us/dotnet/standard/frameworks

第 2 步。运行 dotnet restore

转到输出窗口并运行 dotnet restore

注意:有时 Visual Studio 可能会出现异常(取决于您安装的更新),因此您可能必须关闭并重新打开 Visual Studio。否则,有时清理/重新构建可能会成功。


针对两个框架

您可以选择一个或另一个,甚至可以针对两个框架。

<TargetFrameworks>netcoreapp2.0; net47</TargetFrameworks> //<-- note the plural form!

关于c# - 如何在新创建的 .NET Core 2.0 Web 应用程序中以 .NET Standard 2.0 为目标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46621164/

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