我正在使用.NET Core和C#,当我做了dotnet restore次时,它给出了以下错误:

PS C:\workspace\仲裁者>网络恢复

C:\workspace\仲裁者\仲裁者.csproj:警告NU1701:已使用""还原程序包"Pusher客户端0.5.0".NETFramework,版本=v4.6.1"改为项目目标框架".NETCoreApp,版本=v2.0'. 这可能会导致兼容性问题.

有问题的包裹是PusherClient件.我只是按照NuGet文档导入了它.如何修复此警告?

推荐答案

您不必等到.NET Core升级到PusherClient之后.

参考.NET Framework 4.6.1(及以下版本)从.NET Core是一款new feature美元的产品.NET Core/Standard 2.0预览版2/VS 2017预览版15.3,根据MS,it can be thought of as a feature that helps you migrate .NET Framework code to .NET Standard or .NET Core over time.

  1. 您可以只取消显示此警告

    • 对于特定的包裹
     <PackageReference Include="Contoso.Base.API" Version="1.0.3">
         <NoWarn>NU1701</NoWarn>
     </PackageReference>
    
    • 所有包裹
     <NoWarn>NU1701</NoWarn>
    

    See scenarios 2 and 3 in NuGet wiki for ways to do it from GUI美元.

    不过,应用程序在运行时可能会失败

  2. 如果您不需要您的应用程序是跨平台的,只需通过将以下内容添加到您的csproj文件中,将其目标框架更改为.NET 4.6.1即可:

     <TargetFramework>net461</TargetFramework>
    

.net相关问答推荐

为什么DotNet新的webapi;命令会为我生成不同的文件夹

MassTransit RespondAsync 无法返回空值

在 WebApi 中需要 SSL?

图像 UriSource 和数据绑定

使用 IIS Express 托管网站(临时)

添加新实体标量时实体框架 4 映射片段错误

获取当前方法的名称

什么是编组?当某些东西被编组时会发生什么?

如何根据默认样式创建样式?

如何在 C# 中以编程方式安装 Windows 服务?

使用 C# 设置全局热键

.NET 的黄瓜替代品

C# (.NET) 设计缺陷

更改 SqlConnection 超时

如何在 Dapper.Net 中编写一对多查询?

使用没有catch块的try-finally块

C# ListView 列宽自动

有没有一种简单的方法来判断 .NET Framework 版本?

在构建事件命令行中放置注释的正确方法?

什么时候使用 Tuple 和 KeyValuePair 比较好?