我正在尝试创建一个使用 Typescript、WinJS 和持久本地数据库的多设备混合应用程序。我已经让它工作到了渲染 WinJS 控件的地步。
但是,当我尝试根据添加 Cordova 插件的说明添加 WebSQL 功能时(转到 config.xml 文件-> 在插件选项卡下,检查 WebSQL Polyfill),它将不再编译。
编译器错误为 C:\Program Files (x86)\MSBuild\12.0\bin\amd64\Microsoft.Common.CurrentVersion.targets(1886,5): error MSB3774: Could not find SDK "SQLite.WinRT, Version=3.8. 2"。[C:\Users\Lee\Documents\JSApps\TurnstileTS\TurnstileTS\bld\Debug\platforms\windows8\CordovaApp.jsproj]
我拥有所有最新版本的 SQLite 二进制文件(Win8 和 Win8.1)。我意识到该插件似乎依赖于 v3.8.2,所以我尝试使用命令行添加 NuGet 包:
安装包 SQLitePCL -版本 3.8.2
这安装成功,但下一组消息是:
找不到对适用于 Windows 运行时的扩展 SDK SQLite 的引用。验证是否已删除对 Windows 运行时扩展 SDK SQLite 的引用。卸载“SQLitePCL 3.8.2.0”。成功卸载“SQLitePCL 3.8.2.0”。安装失败。滚回来...
这真让我抓狂。我通常是 C# 人,所以我意识到这可能很简单......但我什至不能像其他一些 stackoverflow 建议状态那样添加对 dll 的引用。当我右键单击项目并尝试“添加引用...”时,我收到错误消息:
TargetPlatformWinMDLocation 属性缺少值。
……然后什么都没有。
有任何想法吗?
[编辑] 我安装了 SQLite 3.8.6 的 Win8、Win8.1、WP8、WP8.1 版本。我刚刚尝试构建应用程序的 Windows Phone 版本,它可以工作!但是,Windows 8 不会构建。我将它设置为 x86 而不是 AnyCPU,它并没有改变任何东西。