Dotnet Core 简明教程

.NET Core - PCL Troubleshooting

在本章中,我们将修复在 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 按钮。

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

从“依赖关系行为”下拉列表中,选择“忽略依赖关系”,然后点按 Install

dependencies

您可看到 StringLibrary 包已从专用源进行安装。如果您展开 PCL 的引用,您将看到 StringLibrary 引用也按以下所示添加进来。

pcl reference

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

same version

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