我一直在尝试添加Square.Connect nuget软件包,以便可以与Square up付款系统集成。
当我尝试添加软件包时,出现错误:
“无法安装软件包'Square.Connect 2.14.0'。您正在尝试将此软件包安装到以'.NETFramework,Version = v4.5'为目标的项目中,但是该软件包不包含任何程序集引用或与该框架兼容的内容文件。有关更多信息,请与程序包作者联系。“
我尝试使用.net 3.5和.net 2.0的新应用程序,但遇到相同的错误,但目标版本已更改。
有人能解决这个问题吗?或者您能告诉我我可能做错了什么吗?
答案 0 :(得分:0)
根据nuget.org https://www.nuget.org/packages/Square.Connect/,Square.Connect软件包适用于.NETStandard 2.0。因此,您应该针对此目标。提示:在nuget页面上扩展依赖项,以查看其需求。
答案 1 :(得分:0)
此软件包与您的项目不兼容。
您应该定位.NET Standard 2.0 或 .NET Full Framework 4.6.1或更高版本。
两者都可以与.NET Standard 2.0程序集一起使用。
.NET Core 2.0也是如此,但是我想这对您没有用!
答案 2 :(得分:0)
正如Palle Due的回答所说,package information page for the most recent version of the package将.NET Standard 2.0列为依赖项。因此,您的项目必须针对与.NET Standard 2.0兼容的对象。 This table列出了几个兼容的运行时,例如.NET Framework 2.6.1或更高版本,.NET Core 2.0或更高版本,如Schwarzie2478的回答所示(但他没有提供源信息,我认为这很有用)。该表还列出了其他一些运行时的最低版本,例如Xamarin的Android / iOS或Unity游戏引擎。
但是,如果您查看软件包的某些旧版本,则2.10.1.297和更早版本依赖于.NET Framework 4.5。因此,如果由于某种原因而无法定位到.NET Framework的较新版本,则可以使用该软件包的这些较旧版本。尽管我不知道任何人会被如此旧版本的框架卡住的原因。 .NET Framework的生命周期很复杂,很难找到带有实际日期的表,但是我猜测没有受支持的服务器操作系统限于.NET Framework 4.5,因此任何安装安全更新的服务器都可能位于.NET Framework 4.6上。 x或更可能是4.7.x,因此我真的看不到有任何理由继续使用net45。