问题标签 [entityspaces]

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 回答
91 浏览

c# - 需要从查询结果中选择一条随机记录

所以我需要能够从我的查询返回的一组记录中选择一个随机记录。我在弄清楚如何执行此操作时遇到问题,因为我不确定结果是在哪个容器中提供给我的。我还使用 EntitySpaces 进行数据库持久性,因此大多数数据库交互性都来自那里。

我已经粘贴了应该在下面执行此操作的方法,以及我遇到问题的伪代码。

我将不胜感激任何帮助。由于我们使用了 EntitySpaces,我什至不确定此时谷歌会做什么,以及这似乎使几乎所有正常的解决方案都不起作用。

谢谢你。

更新:

所以这就是我到目前为止想出的。现在的问题是,if当我知道集合中应该有与这些相对应的值时,这些语句被评估为假。

有任何想法吗?

0 投票
2 回答
559 浏览

c# - 实体空间内连接语法

我有以下代码试图完成查询以填充数据列表。我需要加入他们,但我找不到遵循我正在使用的语法样式的实体空间文档,我正在尝试尽可能少地更改/重写此代码。请帮我完成查询。

让我们说,表 estimtes 联系人字段 id 承包商也包含,我想加入它,这就是我到目前为止所拥有的:

0 投票
1 回答
233 浏览

orm - 如何在 EntitySpaces 中添加延迟加载的列?

如果您没有使用 EntitySpaces ("ES") ORM 的经验或当前未使用此问题,则此问题不适合您。

我有一个 10 年前的应用程序,4 年后现在需要我注意。我的应用程序使用了一个现已失效的 ORM,称为 EntitySpaces,我希望如果您正在阅读这篇文章,您有经验或者可能还在使用它!目前不能切换到另一个 ORM,所以我需要找到一种方法来完成这项工作。

从我上次积极开发我的应用程序到现在(ES 版本 2012-09-30)之间,EntitySpaces(“ES”)在底层 ADO.net 后端发生了重大变化。我正在寻求帮助的场景是实体集合仅加载了列的子集:

然后我会覆盖初始选择中未加载的属性,以便我可以将它们延迟加载到访问器中。这是一个这样的延迟加载属性的示例,它曾经完美地工作。

有趣的部分是我将列添加到基础 DataTable DataColumn 集合的位置:

当我更新到 ES 的当前(和开源)版本(版本 2012-09-30)时,我不得不从该访问器中注释掉所有与 ADO.net 相关的内容。这意味着“ImageData”列未正确配置,当我更改它的数据并尝试保存实体时,我收到以下错误:

列 'ImageData' 不属于 table 。

我花了几天时间查看 ES 源代码并进行试验,似乎他们不再使用 DataTable 来支持实体,而是使用“esSmartDictionary”。

我的问题是:是否有一种已知的、受支持的方法来完成在新版本的 ES 中使用的相同延迟加载行为?通过告诉 ORM 将其添加到实体后备存储中,我可以在哪里更新未包含在初始选择中的属性(即列)?

0 投票
0 回答
148 浏览

c# - EntitySpaces 查询不返回任何结果,但如果我运行相同的查询,我会得到 1 条记录

我正在向使用 EntitySpaces 的旧 ServiceStack 应用程序添加新功能。我正在构建一个非常简单的 SQL 查询,当我执行它时,它根本不返回任何记录。如果我在尝试加载集合、复制查询并在 SSMS 中执行它的位置设置断点,我会得到我正在寻找的记录。但是当我让 ES 执行它时,它得到 0 个结果。

这是查询。

这是C#

就像我说的,实际的 SQL 查询在执行时返回 1 行(这是我所期望的)。C# 什么也不返回。此外,查询中的参数在 SQL 和 C# 之间是相同的

0 投票
1 回答
113 浏览

c# - EntitySpaces 中相对复杂的查询返回的结果与实际执行时不同

我有(我认为是)一个相对复杂的 SQL 查询来为我在工作中维护的应用程序的新功能选择一些数据。这是查询。

在实体空间中,我是这样写的:

但是,当我在 ES 应用程序中运行它时(使用pchtc.Load(pchtq)),我得到大约 7500 行,而当我运行 SQL 查询时,我得到大约 1500 行。

这里出了什么问题?

0 投票
1 回答
111 浏览

sqlite - 无法加载文件或程序集“EntitySpaces.SQLiteProvider”或其依赖项之一

无法加载文件或程序集“EntitySpaces.SQLiteProvider”或其依赖项之一。试图加载格式不正确的程序

在此处输入图像描述

0 投票
2 回答
170 浏览

c# - 从 EntitySpaces 迁移到 EntityFramework

我们的旧应用程序正在使用 EntitySpaces 进行数据库访问,但由于 ES 已经 EoL 好几年了,并且导致我们的应用程序出现一些性能问题,我们正在考虑切换到 EntityFramework。

有没有一种简单的方法可以在不完全重写我们所有的扩展类的情况下做到这一点?

0 投票
1 回答
74 浏览

c# - C# 可以在操作数右侧使用 Func<> 重载运算符“>”吗?

我正在编写一个流利的 API(一直在升级 EntitySpaces),我想要这个语法......

但是你猜对了,编译错误。我重载了语法中的所有运算符,一切正常,但我无法让这个语法工作,我认为“>”后面跟着“()=>”语法只会完全混淆编译器,它永远无法真正工作?

请注意,上面的 Select() 方法中的“q.Id”返回一个 esQueryItem,因此下面的重载...

这是我的超载...

0 投票
0 回答
28 浏览

c# - where 子句中的计算值

我正在使用实体空间,需要运行以下查询

select * from MyTable WHERE (Age * 10) IN (50, 60, 70)

ES版本是

query.Where((query.Age * 10).In(AgesList));

这会生成以下无效查询(Age * 10丢失)

select * from MyTable WHERE IN (50, 60, 70)

产生所需查询的任何解决方案?