我正在尝试从
Windows Phone 8应用程序访问sqlite数据库,但是当遇到sqlite代码时遇到以下错误:
{System.IO.FileNotFoundException: The specified module could not be found. (Exception from HRESULT: 0x8007007E) at System.StubHelpers.StubHelpers.GetWinRTFactoryObject(IntPtr pCPCMD) at sqlite.sqlite3.sqlite3_open_v2(String filename,Database& db,Int32 flags,String zVfs) at sqlite.sqlite3.Open(String filename,IntPtr zVfs) at sqlite.sqliteConnection..ctor(String databasePath,sqliteOpenFlags openFlags,Boolean storeDateTimeAsTicks) at TopoMap.Map.MapTileServer.<Initialise>d__0.MoveNext()}
>我已经安装了Windows Phone的Visual Studio扩展sqlite(v3.8.4.3).
>我已经安装了sqlite-net-wp8 NuGet软件包(v3.8.4.3).
>我已经将sqlite.cs和sqliteAsync.cs添加到我的项目中.
>我已将USE_WP8_NATIVE_sqlITE条件编译符号添加到我的项目.
该项目运行正常,没有问题,直到一行代码被访问底层的sqlite3类.
任何想法可能是什么问题?
解决方法
>从解决方案中删除所有对sqlite的引用
>从 http://visualstudiogallery.msdn.microsoft.com/cd120b42-30f4-446e-8287-45387a4f40b7安装适用于WP8的sqlite
>重新启动Visual Studio.在我的例子中,它是Visual Studio 2013.
>打开您想要使用sqlite的解决方案
>使用软件包管理器控制台安装sqlite-net.输入以下命令:Install-package sqlite-net
>安装sqlite-net-wp8.输入以下命令:Install-package sqlite-net-wp8
>添加编译配置
>从 http://visualstudiogallery.msdn.microsoft.com/cd120b42-30f4-446e-8287-45387a4f40b7安装适用于WP8的sqlite
>重新启动Visual Studio.在我的例子中,它是Visual Studio 2013.
>打开您想要使用sqlite的解决方案
>使用软件包管理器控制台安装sqlite-net.输入以下命令:Install-package sqlite-net
>安装sqlite-net-wp8.输入以下命令:Install-package sqlite-net-wp8
>添加编译配置
7.1右键单击该项目,然后选择“属性”.
7.2选择Build选项卡.
7.3在配置列表中,选择所有配置.
7.4在“平台”列表中,选择“所有平台”.
7.5在“构建”选项卡上,您将在常规标题下看到条件编译符号,其中包含Windows Phone应用程序项目上的默认值SILVERLIGHT; WINDOWS_PHONE.将值更改为SILVERLIGHT; WINDOWS_PHONE; USE_WP8_NATIVE_sqlITE并保存项目文件.
>右键单击引用并选择添加引用.转到Windows Phone – >扩展并检查选项sqlite for Windows Phone
它适用于我!祝你好运