.NET Core - PCL 疑难解答



本章将解决我们在 Xamarin.Forms 项目中从私有源安装 NuGet 包时遇到的错误。

Fixing error

我们将进一步简要了解这个问题。首先,让我们右键单击 PCL 库并选择“属性”。

在此页面上,您将看到目标框架的完整系列。从错误中可以看出,.NETPortable 配置文件 259 与我们的 StringLibrary 1.0.1 不兼容。但是,它试图从 .NET Standard 1.1 库中引用。

Compatible

现在让我们看看 .NET Standard 库,并确定哪个平台与我们的库不兼容。

Platform

您可以看到 Windows Phone Silverlight 8 与 .NET Standard 1.0 兼容。如果您打开以下网页,您将看到 Profile259 只能支持 .NET Standard 1.0。

Profile259

现在让我们取消选中 Windows Phone Silverlight 8。

Silverlight

单击“确定”按钮。

Ok Button

现在要解决此问题,请单击“确定”并取消“更改目标”对话框,然后打开包管理器控制台并执行以下命令。

PM > Uninstall-Package Xamarin.Forms

Execute Command

现在让我们转到 PCL 库的属性。单击“更改”按钮。

PCL library

取消选中 Windows Phone Silverlight 8 并单击“确定”。

Uncheck

现在您可以看到 Windows Phone Silverlight 8 不再出现在目标框架中了。您还可以看到现在的目标配置文件。要查看这一点,让我们卸载 PCL 库并编辑 XamarinApp.csproj 文件。

Unload

现在您可以看到 TargetFrameworkProfile 现在是 Profile111。

TargetFrameworkProfile

如果您打开文档,您将看到 Profile111 支持 .NET Standard 1.1。

Documentation

现在让我们重新加载 PCL,打开 NuGet 包管理器,并尝试从私有源安装 StringLibrary 包。

Package private feed

从“依赖项行为”下拉列表中,选择“忽略依赖项”,然后单击“安装”。

Dependencies

您可以看到 StringLibrary 包现在已从私有源安装。如果您展开 PCL 的“引用”,您将看到 StringLibrary 引用也已添加,如下所示。

PCL Reference

我们已卸载了针对 Windows Phone Silverlight 8 问题的 Xamarin.Forms。需要重新安装 Xamarin.Forms。建议安装相同版本。

Same Version

安装完成后,让我们在您的应用程序中使用 StringLibrary 功能。

广告