问题标签 [sqlite-net-extensions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
870 浏览

c# - 找不到方法“SQLiteConnection.InsertAll”

我正在尝试在(当前)Android Samsung S6 手机上的数据库中使用多对多数据库关系。为此,我使用 SQLite.Net-PCL 3.0.5 和 SQLiteNetExtensions 1.3.0。我有简单的 SQlite 访问工作正常,但现在我尝试设置多对多关系(通过链接表),当我调用时,sqlite-net-extensions 正在抛出 m_DatabaseConnection.UpdateWithChildren(article);

例外是:

这很奇怪,因为我反汇编了 dll 并确定它确实存在。我的数据类的结构是:

那么我做错了什么?我是否需要包含不同版本的 SQLite.Net-PCL?我尝试下载和编译扩展项目,但似乎有错误(我不得不卸载 iOS 项目,因为我没有 iOS 许可证,但其余的应该已经编译)。

有任何想法吗?

- 更新 - -

似乎有问题的行必须在“WriteOperations.cs”内:

然后这会转到 SQLiteExtensions-MvvmCross 并且必须无法找到接口的实现。所以,问题是,我需要其他 NuGet 包吗?

0 投票
1 回答
95 浏览

sqlite-net-extensions - CreateTable 不创建 PrimaryKey 或 Foreign Kety Constraits

我创建了一个简单的项目。添加了 Sqlite 和 Sqlite 扩展。但是,当我创建表时。Primary 和 ForeignKey 关系均未在表上建立。有人可以让我知道我做错了什么。

在此处输入图像描述

0 投票
1 回答
754 浏览

sqlite-net-extensions - 同一个表的多个一对一关系

将多个一对一关系建模到同一个表(sqlite-net-extensions)的最佳方法是什么?我正在寻找这样的解决方案:

显然,上述方法行不通。

我也考虑过其他选择:

  1. 创建一个捕获组织角色的表(WayBillOrganization):Waybill -->> WayBillOrganization --> Organization

  2. 将所需的反向 OneToMany 属性放入组织中。

  3. 手动处理事情(即仅在 WayBill 类中存储主键并单独加载组织)。

选项 2. 是我想避免的。组织与许多其他类别相关(在我的示例中没有),即使在运单的情况下,还有一些我没有包含在示例中的关系(承运人、货物支付方、货运代理等)。另外,我宁愿只在需要导航时才使用逆属性(例如,我不使用组织来查找运单,所以逆属性只是一个额外的负担。)

选项 3. 也没有那么吸引人。

所以选项 1. 似乎是要走的路。但在去那里之前,我想知道我的示例中的完美世界解决方案是否确实是不可能的。

所以,我的问题是:有没有一种方法可以在没有明确声明逆属性的情况下对多个单向OneToOne 关系进行建模?

0 投票
1 回答
1149 浏览

sqlite-net-extensions - UpdateWithChildren sqlite-net-extensions

我对 UpdateWithChildren 和 InsertOrReplaceWithChildren 感到困惑。
我不能让它与 UpdateWithChildren 一起使用,但它可以与 InsertOrReplaceWithChildren 一起使用。
所以我删除了db,然后应用InsertOrReplaceWithChildren,
但问题是Id是AutoIncrement,Id不断添加。
你能给我一些建议吗?
谢谢。

在此处输入图像描述

0 投票
1 回答
513 浏览

sqlite-net-extensions - 有没有办法限制/分页结果集

有没有办法使用 GetAllWithChildren() 或 GetAll() 或 GetAllWithChildrenAsync() 或 GetAllAsync() 来限制/分页结果集。

这些方法接受过滤表达式,但似乎没有任何直接的方法可以设置显式限制器或 orderby 子句。

0 投票
1 回答
576 浏览

c# - SQLiteNetExtensions - NuGet 无法安装包

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

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

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

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

在此处输入图像描述

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

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

我该如何解决这个问题?

0 投票
2 回答
4779 浏览

c# - SQLite Net Extensions OneToMany 关系不插入/保存/更新儿童

我正在尝试使用 SQLite Net Extensions 为游戏做笔记应用程序,它使用 3 层模型,Game [1 has many *] Character [1 has many *] Note [1 applies to *] Character

我在 Visual Studio Community 2015 中使用 Xamarin,并使用 NuGet 包管理器安装了 SQLiteNetExtensions。

我还没有超过 Game 和角色之间的第一级关系,并且插入数据库(无论是通过初始插入然后更新,还是递归使用 InsertWithChildren)不会更新 Game 对象中的 Characters。它只会为List<CharacterModel>内部 GameModel 生成一个空对象。然而,游戏和角色都在数据库中。

抽象基础模型

游戏模型

人物模型

为了测试插入数据库,我在我的主要活动中执行此操作:

我不知道从哪里开始对此进行排序,希望能得到一些帮助来启动和运行它。


编辑:使用非继承的主键根本没有区别。testGame.Characters或中仍然没有数据testCharacter.Game

0 投票
1 回答
1219 浏览

c# - 替换 sqlite 扩展:InsertWithChildren(变量太多)

我在这里有一个项目,从不同来源读取大量数据。在一个特殊的逻辑中,数据/对象模型是用这些数据构建的。因此,我检索了一个完整的支持 SQLite 的对象模型。

数据之前使用一个简单的方法写入 SQLite 数据库:

但是,由于数据的来源变大了,这已经不可能了,因为 Insert 方法会抛出“变量太多”的异常。;(

现在,我正在寻找这种方法的替代品。这里的困难在于,在我的模型中,我几乎总是在两个方向都有外键。父母有孩子,孩子知道父母。

性能不是问题。我不在乎函数需要 10 秒还是 5 分钟。但是有没有人知道如何处理插入,而所有外键都正确填写?

如果我使用一个简单的

外键(ID)都是 Guid.Empty;

最好的问候和欢呼,

克里斯

0 投票
1 回答
373 浏览

uwp - UWP SQLite-Net 扩展无法插入子级

我在 UWP 项目中使用 Visual Studio 2015 从 nuget 安装 SQLiteNetExtensions。这是我的模型:

但是当我运行时:

并使用 SqliteBrowser 打开数据库文件。我只得到没有任何剧集记录的 MovieItem 记录。我尝试了很多方法,但它仍然不起作用。

0 投票
2 回答
377 浏览

c# - 完全删除sqlite-net扩展中多对多表中的关系?

我有类似的情况,对于这篇文章,删除有效,但仅适用于学生和班级表,在 student_classes 表中元素不会被删除。

要删除我使用以下代码

我在插入和更新过程中没有问题谢谢

ps 我的类有不同的名字,不过没关系,代码真的一模一样