问题标签 [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 回答
945 浏览

c# - 如何使用适用于 Windows 7 的 Sqlite-net 扩展?

我使用了 sqlite-net 库,并且正在创建类似于以下的 sqlite 连接: var db = new SqliteConnection(path); 但是 Sqlite-net Extensions 需要使用Sqlite.Net.SqliteConnection该需求作为第一个参数ISQlitePlatform,我不知道应该为 Windows 7 平台传递什么。 https://github.com/praeclarum/sqlite-net

0 投票
1 回答
166 浏览

xamarin - 允许在 Xamarin 上设置 page_size 的 SQLite.Net 版本?

在这里寻找或一些建议。

我的 Xamarin Forms PCL 项目正在使用 SQLite.Net-PCL、SQLite.Net.Async-PCL、SQLiteNetExtensions 和 SQLiteNetExtensions.Async——所有这些都是 NuGet。

令人失望的是,SQLite.Net-PCL 不允许将 page_size 从默认值 4096 字节更改,并且目前没有解决此问题的计划。(https://github.com/oysteinkrog/SQLite.Net-PCL/issues/128

这使我的数据库的大小无法接受;我需要 512 个字节,这将使数据库小大约八倍。所以我希望使用允许设置 page_size 的另一个版本的 SQLite-Net(用于 Xamarin iOS/Android)。

  1. 鉴于我致力于 SQLiteNetExtensions,哪个版本的 SQLite-Net 最适合使用?

  2. 最好在我的项目中包含 SQLite 源代码吗?

  3. SQLiteNetExtensions 和 SQLiteNetExtensions.Async NuGet 是否仍可与该版本的 SQLite 一起使用,或者我是否需要包含这些源?(TwinCoders 建议使用 NuGets for SQLite.Net。)

当然会很感激任何建议。

0 投票
1 回答
304 浏览

sqlite-net-extensions - SQLite-Net Extensions Newtonsoft.Json version depedency

In the last version of the nuget package "SQLite-Net Extensions PCL", the required version of Newtonsoft.Json has been bumped to >= 6.0.0.5. Is there any particular reason for that ? Because of that I can't update the package in my Azure Mobile Service project as Azure Mobile Service depends on Newtonsoft.Json = 6.0.0.4... annoying... :)

Or is there another way ? (except from building form source)

Thanks a lot.

0 投票
1 回答
8719 浏览

sqlite - SQLite-Net 扩展两个实体之间的一对一和一对多关系

我正在使用 SQLite-Net PCL 和 SQLite-Net 扩展来开发使用 Xamarin 的应用程序。

在我的模型中,我有两个实体,我们称它们为 A 和 B,它们通过一对一和一对多的关系连接。例如,A 与 B 是一对一的关系,A 与 B 也是一对多的关系。

是否可以使用 SQLite-Net 扩展来表达这种行为?

0 投票
1 回答
174 浏览

sqlite - Sqlite.net 不创建 Sqlite.net 扩展的属性

我的问题是,如果我想创建两个具有这[OneToMany]两者之间关系的表。

表 OrderPos 是在没有外键的情况下创建的,因此该InsertOrUpdateAllWithChildren方法出现异常。

我应该使用另一个派生类SqliteConnection吗?

最好的问候,托马斯

0 投票
0 回答
1121 浏览

c# - 在某些情况下,SQLite-Net 扩展不以级联方式插入

我正在使用 SQLite-Net PCL 和 SQLite-Net 扩展来开发使用 Xamarin 的应用程序。

在我的模型中,我有一个实体(我们称之为 A),它通过一对多关系(在模型中表示为列表)连接到其他四个实体。为了在数据库中插入 A 的对象时递归地填充表,我定义了在读取、插入和删除时使用 Cascade 的关系。

为了测试我是否正确执行了所有操作,我创建了一个 A 类型的对象并填充了包含列表,最后我将它插入到数据库中。奇怪的是,对于 4 个包括列表中的 2 个,插入进行得很顺利,并且所有连接的对象都被插入。相反,对于其他 2,只有列表的第一个对象被插入到数据库中。需要明确的是,我正在使用 db 浏览器直接检查数据库内容。

以下是仅插入列表的第一个元素的对象之一的示例。

相反,这是插入正确的对象之一。

需要明确的是,基础对象 Entity 包含主键的定义:

这就是定义关系的方式:

然后,我通过以相同方式使用两个列表(List 和 List)对其进行初始化来创建 A 对象。我终于将对象插入到数据库中

其中 entity 是 A 类型,而 c 是连接对象。

你对这种奇怪行为的动机有任何线索吗?

0 投票
1 回答
1416 浏览

c# - SQLite-Net Extensions 如何正确递归更新对象

我正在使用 SQLite-Net PCL 和 SQLite-Net 扩展来开发使用 Xamarin 的应用程序。

我在两个类之间有一对多的关系AB定义如下:

我想做的是A从数据库中检索一个类型的对象,删除一个Sons类型的对象B并相应地更新数据库。这是我尝试过的:

问题是对象UpdateWithChildrenInsertOrReplaceWithChildren没有真正从数据库中删除,而只是外键为空。是否可以使其删除son对象?

0 投票
0 回答
684 浏览

sqlite - SQLite.Net Extensions 触发器未通过递归插入激活

我正在使用 SQLite-Net PCL 和 SQLite-Net 扩展来开发使用 Xamarin 的应用程序。

我在两个类之间有一对多的关系AB定义如下:

我已经定义了一个触发器,用于在插入时(以及稍后在更新时)自动设置 the和对象的LastModified字段。问题是,如果我使用,触发器不会被激活,而它发生在,即使显然在这种情况下我们没有递归插入。ABInsertWithChildrenInsert

复制问题的示例代码:

在此示例中,使用方法two插入,正确更新列,而使用 插入的不会发生这种情况。我做错事了吗?InsertLastModifiedoneInsertWithChildren

0 投票
1 回答
1093 浏览

sqlite - InsertOrReplaceWithChildren 的 SQLite.Net 扩展问题

我正在使用 SQLite-Net PCL 和 SQLite-Net 扩展来开发使用 Xamarin 的应用程序。

我有两个类AB定义如下:

我正在尝试通过以下方式使用插入或替换:

问题是第二个InsertOrReplaceWithChildren是抛出Constraint异常,如果我们删除A.Name. InsertOrReplaceWithChildren如果违反了唯一约束,不 应该替换对象吗?

0 投票
1 回答
1591 浏览

xamarin - 无法从 SQLite.Net Async PCL 获取项目

我正在努力使用 SQLite.Net Async PCL 的异步 API 按 ID 获取项目。这是我的模型课

以及此处具有一对多关系的 LineItems

这是构造函数:

除了按 ID 获取发票外,其他 CRUD 方法(插入、GetALL)都在工作,而且 Visual Studio 和 Xamarin Studio 都没有给我任何有用的堆栈跟踪。

这是获取方法

我正在传递 SQLite 的 Android 实现,就像我说创建了数据库但我无法取回 Invoice 对象一样,我什至尝试过

任何帮助将不胜感激。