问题标签 [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.
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 包吗?
sqlite-net-extensions - 同一个表的多个一对一关系
将多个一对一关系建模到同一个表(sqlite-net-extensions)的最佳方法是什么?我正在寻找这样的解决方案:
显然,上述方法行不通。
我也考虑过其他选择:
创建一个捕获组织角色的表(WayBillOrganization):Waybill -->> WayBillOrganization --> Organization
将所需的反向 OneToMany 属性放入组织中。
手动处理事情(即仅在 WayBill 类中存储主键并单独加载组织)。
选项 2. 是我想避免的。组织与许多其他类别相关(在我的示例中没有),即使在运单的情况下,还有一些我没有包含在示例中的关系(承运人、货物支付方、货运代理等)。另外,我宁愿只在需要导航时才使用逆属性(例如,我不使用组织来查找运单,所以逆属性只是一个额外的负担。)
选项 3. 也没有那么吸引人。
所以选项 1. 似乎是要走的路。但在去那里之前,我想知道我的示例中的完美世界解决方案是否确实是不可能的。
所以,我的问题是:有没有一种方法可以在没有明确声明逆属性的情况下对多个单向OneToOne 关系进行建模?
sqlite-net-extensions - 有没有办法限制/分页结果集
有没有办法使用 GetAllWithChildren() 或 GetAll() 或 GetAllWithChildrenAsync() 或 GetAllAsync() 来限制/分页结果集。
这些方法接受过滤表达式,但似乎没有任何直接的方法可以设置显式限制器或 orderby 子句。
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 时,不会发生此错误。
我该如何解决这个问题?
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
c# - 替换 sqlite 扩展:InsertWithChildren(变量太多)
我在这里有一个项目,从不同来源读取大量数据。在一个特殊的逻辑中,数据/对象模型是用这些数据构建的。因此,我检索了一个完整的支持 SQLite 的对象模型。
数据之前使用一个简单的方法写入 SQLite 数据库:
但是,由于数据的来源变大了,这已经不可能了,因为 Insert 方法会抛出“变量太多”的异常。;(
现在,我正在寻找这种方法的替代品。这里的困难在于,在我的模型中,我几乎总是在两个方向都有外键。父母有孩子,孩子知道父母。
性能不是问题。我不在乎函数需要 10 秒还是 5 分钟。但是有没有人知道如何处理插入,而所有外键都正确填写?
如果我使用一个简单的
外键(ID)都是 Guid.Empty;
最好的问候和欢呼,
克里斯
uwp - UWP SQLite-Net 扩展无法插入子级
我在 UWP 项目中使用 Visual Studio 2015 从 nuget 安装 SQLiteNetExtensions。这是我的模型:
但是当我运行时:
并使用 SqliteBrowser 打开数据库文件。我只得到没有任何剧集记录的 MovieItem 记录。我尝试了很多方法,但它仍然不起作用。
c# - 完全删除sqlite-net扩展中多对多表中的关系?
我有类似的情况,对于这篇文章,删除有效,但仅适用于学生和班级表,在 student_classes 表中元素不会被删除。
要删除我使用以下代码
我在插入和更新过程中没有问题谢谢
ps 我的类有不同的名字,不过没关系,代码真的一模一样