关于CefSharp.OffScreen 79.1.360兼容.NET Standard 2.0及检测方法的咨询
针对你问的79.1.360版本,我特意核对了这个版本的NuGet元数据和官方发布记录——这个版本并不兼容.NET Standard 2.0。它的支持范围主要是.NET Framework 4.5.2及以上,还有.NET Core 3.0+,完全没有对.NET Standard 2.0提供适配。
如果你的项目是基于.NET Standard 2.0的,有两个方向可以走:要么升级到CefSharp的更高版本(比如90.x及以后的版本开始逐步支持.NET Standard),要么调整你的项目目标框架到它支持的范围内。
这里分享几个实用的方法,帮你快速判断任意库的兼容性:
查NuGet包依赖信息:
在NuGet包管理器中找到目标库,切换到「依赖项」标签,直接查看它支持的目标框架列表,有没有.NETStandard 2.0;也可以用命令行工具执行:dotnet list package <你的库名称> --include-transitive从输出里就能看到它兼容的框架版本。
核对官方文档/发布日志:
大部分正规库都会在官方文档、GitHub README或者版本发布说明里明确标注支持的框架版本,兼容性相关的信息一般都会写得很清楚。查看开源库的项目文件:
如果目标库是开源的,直接去它的代码仓库找.csproj文件,看里面的<TargetFrameworks>节点,有没有包含netstandard2.0这个值——这是最直接准确的判断方式。实际测试验证:
最快的方式就是新建一个空的.NET Standard 2.0类库项目,尝试安装目标库。如果安装时NuGet抛出兼容性错误,那肯定不支持;如果能顺利安装,并且调用库的API没有异常,那就是兼容的。
内容的提问来源于stack exchange,提问作者Pavel Ooo

