0

我一直在使用 Xamarin 开发几个跨平台移动项目。几乎所有人都以某种方式使用 SQLite。我一直在为我的 SQLite 功能维护两个独立的库;一款适用于 iOS,一款适用于 Android。我做事的方式限制了我可以在我的 Android 和 iOS 版本的应用程序之间重用多少代码。我想将我的大部分 SQLite 功能整合到一个跨平台库中,以便进一步整合代码。

我遇到的问题是当我尝试安装SQLiteNetExtensions. 我似乎只能在 Android 或 iOS 项目上安装它,但我不能在 PCL iOS/Android 项目上安装它。

这是我尝试SQLiteNetExtensions在包管理器控制台中安装时遇到的错误:

Install failed. Rolling back...
Install-Package : Could not install package 'SQLite.Net-PCL 3.0.5'. You are trying to install this package into a project that targets 'portable-net45+sl50+MonoAndroid10+xamarinios10+MonoTouch10', but the 
package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.
At line:1 char:1
+ Install-Package SQLiteNetExtensions
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Install-Package], InvalidOperationException
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand

我正在尝试的项目类型是 C# 可移植类库。我在创建项目时选择它,然后像这样选择目标框架:

在此处输入图像描述

然后我右键单击引用并选择管理 NuGet 包。我在搜索中输入 sqlitenetextensions,然后单击 Install for SQLite.Net Extensions-PCL。之后我得到错误。

当我创建 Android 或 iOS 库项目并尝试安装相同的 sqlitenetextension 时,不会发生此错误。

我该如何解决这个问题?

4

1 回答 1

1

我相信问题是 SQLite.NET PCL 与 Silverlight 5 不兼容,只有 4。

这里有一个分支,您可以尝试:https ://www.nuget.org/packages/SQLite.Net-PCL-Silverlight/ 它对我有用,虽然我没有检查过 Xamarin。

于 2016-01-04T22:32:23.723 回答