当前位置: 首页 > 知识库问答 >
问题:

将.NET核心2.0类库转换为.NET标准

夹谷腾
2023-03-14

有没有一种方法可以轻松地将面向.NETCore2.0的类库转换为.NET标准?

如果我理解正确,如果有人想在针对不同.NET框架(例如.NET Framework,.NET Core,Xamarin等)的项目中最大限度地提高类库的可重用性,那么以.NET Standard为目标的更好主意 - 前提是所有必需的API都可以在将要定位的.NET Standard版本中提供。

这就是我想将类库从. NET Core 2.0转换为. NET Standard 1.6或. NET Standard 2.0的原因。

共有3个答案

倪鹏
2023-03-14

>

  • 转到项目文件夹
  • 打开. csproj文件
  • 更换目标框架

    netcoreapp2.2到netstandard2.0

    看到这幅图才更清楚

  • 令狐钧
    2023-03-14

    您可以编辑csproj文件(可以在VS中通过右键单击项目文件来完成)并进行更改

    <TargetFramework>netcoreapp2.0</TargetFramework>
    

    <TargetFramework>netstandard2.0</TargetFramework>
    
    慕容光启
    2023-03-14

    在项目文件中,您可以用确切的版本将目标编译指向< code>netstandard。

    Proj.csproj的示例:

    <Project Sdk="Microsoft.NET.Sdk">
      <PropertyGroup>
        <TargetFramework>netstandard1.6</TargetFramework>
      </PropertyGroup>
    </Project>
    ...
    

    微软提供了关于目标类型的很好的文档。

    Dotnet标准不是一个框架或库,它是一组抽象的指令:系统应具备哪些功能<;code>。数组、字符串列表,等等。目前,有不同的实现:.NET Framework、.NET Core、Mono、Xamarin、Windows Phone。这意味着不同的实现可以针对netstandard重新编译和重用您的库。这是NuGet软件包的一个非常好的选择。

    您可以玩这些版本并找到库所需的最小功能集。每个Dotnet标准都扩展了以前版本的功能。因此,选择的目标版本越少,您的库将支持的平台就越多。

     类似资料:
    • 这是.NET framework 4.8---->.NET core 5.0 我有一个个人的国际象棋引擎,我正在工作,昨天我决定从.NET framework切换到.NET Core。 在这个过程中我没有更改1行代码,完全相同的代码。 当我这样做的时候,我注意到损失了几个百分点,在2%到5%之间(目前为止) 这足以看出perft每秒平均有500,000到200,000步的差异(如果你不知道这是什么

    • 我读过关于.NET标准和.NET核心之间的区别,但我真的不知道区别是什么,也不知道什么时候选择.NET标准库项目,什么时候选择.NET核心库项目。

    • 我试图从Scala类创建一个Dll。我正在使用IntelliJ和SBT。我已经找到了一种使用ikvm-converter将.jar文件转换为Dll的方法。现在的问题是:当我在SBT下使用“package”从我的.scala文件中创建一个.jar文件,然后尝试用ikvmc将其转换为Dll时,结果库在集成到C#中时是空的... 向你问好Christoph

    • .NET核心和ASP.NET核心到底有什么区别?

    • 我刚刚使用创建了一个新项目。我的Google-foo可能会让我失望,但我没有找到与我的答案相关的任何内容(如果我错过了一些明显的东西,请链接到另一个SO答案或相关文档)。 如果我想确保此新项目符合 .NET 标准 2.0,我现在该怎么办?