通过NuGet添加System.Data.SQLite不会添加对项目的引用

时间:2015-07-27 17:49:28

标签: visual-studio sqlite xamarin package nuget

我试图制作一个非常简单的Xamarin.Forms测试应用程序来探索System.Data.SQLite包的一些功能(即加密)。但是,我似乎无法让Visual Studio 2012将包的引用添加到项目中。

以下是我要采取的步骤:

  1. 创建了一个新的Xamarin.Forms Portable空白应用。
  2. 右键单击TestApp(核心项目)并选择Manage NuGet Packages
  3. 搜索" sqlite"
  4. 安装" System.Data.SQLite(x86 / x64)"包。 (此软件包的版本为1.0.97.0,它被描述为" x86和x64的官方SQLite数据库引擎以及ADO.NET提供程序。")
  5. 根据NuGet的说法,该软件包已成功安装。
  6. 但是,我无法在我的项目"参考文献"中添加参考文献。文件夹,我也不能写"使用System.Data.SQLite"没有错误("无法解析符号'数据'")。有谁知道为什么会这样?

    另外,我可以按照上面描述的完全相同的过程,除了创建一个Xamarin.Forms Portable空白应用程序,我选择一个普通的C#控制台应用程序。这允许我很好地安装NuGet包,并按预期显示在引用中。

2 个答案:

答案 0 :(得分:1)

发布更新以分享我所学到的知识。

正如Jason在他的回答中提到的那样,我无法在我的Xamarin.Forms项目中引用该包的原因是因为根据定义,Xamarin.Forms是一个PCL项目。它适用于所有平台。我在我的问题中提到的包不是PCL,这意味着包依赖于平台的任何东西都是不可访问的(基本上是整个包)。 SQLite.Net-PCL包与System.Data.SQLite基本相同,但是以PCL形式,这意味着它与Xamarin.Forms项目兼容。

遵循这个逻辑,我能够从控制台项目访问System.Data.SQLite是有道理的,因为控制台项目不是PCL项目,而是针对特定平台。

答案 1 :(得分:0)

对于PCL项目,请使用SQLite.Net-PCL