问题标签 [object-graph]

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 投票
3 回答
860 浏览

.net - 用于在 .NET 中可视化对象图的库

有谁知道或可以推荐一个可以在 .NET 中递归可视化任意对象图的库?

我需要能够打印出(到控制台)对象图的格式化表示。例如,给定一个像这样的简单对象图:

很容易产生这样的输出:

我绝对可以自己使用 Reflection 编写这样的库,但如果已经存在类似的东西,我不妨使用它,而不是浪费时间重新发明轮子。

我需要它来提供编码演示,以便轻松地向观众展示构建的对象图的样子。

0 投票
2 回答
177 浏览

.net - .Net 模板引擎,带有对象图输出,而不是字符串

我想知道是否有任何用于创建对象图的模板引擎?有许多创建 HTML 或其他字符串结果的内容。但我想要一个吐出对象的模板引擎。可以说是预处理器。

我有一个应用程序需要某种预定义的对象图,用于呈现特定的页面小部件。例如,我的页面上有一个工具栏,但每个页面都有不同的工具栏。它可能看起来非常相似。但例如按钮 Add 将指向一个页面上的不同 URL,而不是另一个页面。

示例对象图(部分):

这个静态定义(带有动态资源和动态 URL 助手调用)可能会变得非常冗长和复杂。想一想类似于 Word 的类似功能区的工具栏。很复杂很长。

我希望将这些对象生成模板存储在数据库中,并且每个页面都可以读取它们自己的内容,然后模板引擎将生成它并使用特定的资源类型 + 键来放入本地化数据。同样的事情也适用于操作' 网址...

在对象反序列化(XML 或 JSON)中进行了类似的操作。但内置(反)序列化技术不支持变量替换或资源链接或类似的。最好的办法是支持资源链接和 lambda 表达式。

总结一下:是否有任何 .net 对象图模板引擎/预处理器可以提供我需要的东西?

0 投票
2 回答
13699 浏览

ruby-on-rails - Rails 3:转义字符(\)出现在 JSON 字符串的一部分中

任何人都知道为什么我的一些 json 元素被反斜杠(\)转义而其他元素没有?

理想情况下,我不希望他们中的任何一个被逃脱......

这是通过覆盖as_json两个模型生成的。人 has_many Dogs。

0 投票
1 回答
230 浏览

wcf - 记录 DTO 对象的不完整对象图

当前的体系结构基于 WCF 服务,这些服务从 DB 填充 DTO 对象并返回它们。

有些方法返回完整的对象图,有些只返回部分。如果完全填充,一些对象图会非常大 - 所以这不是所有情况的选择。

如何记录 DTO 对象的哪些属性已填充,哪些未填充?这是一个 .NET 商店,并且 XML 注释没有提供足够的灵活性来记录不总是填充的属性。其他人如何应对这一挑战?

例如:对于客户来说,Invoice 对象是相同的,无论它是否填充了所有属性。

提出的一个想法是为仅具有填充属性的对象生成 XSD 模式。尽管在技术上是正确的,但这似乎不是一个“好/可用”的文档。

编辑:我发现 UML 可能是比 XSD 更好的选择,因为它更具可读性。有没有从 XML -> XSD -> UML(或其他图表范例)快速的方法?

0 投票
3 回答
2506 浏览

.net - .NET 二进制序列化对象与对其他对象的引用。. . 发生什么了?

如果您有一个引用其他对象(例如实例 B 和 C)的对象实例 A,并且您将 A 二进制序列化到文件中,会发生什么?您现在是否拥有包含 A、B 和 C 的序列化数据?

它是如何工作的?如果我反序列化数据会得到什么?A、B、C??

(也可以随意添加内部工作解释)。

0 投票
1 回答
476 浏览

java - 如何使用 JPA Criteria API 导航对象图?

假设我们有以下类图:

现在我想使用 JPA Criteria API 查询与特定街道地址匹配的所有房屋。我试图这样做,但没有奏效。

0 投票
2 回答
2430 浏览

objective-c - iOS 上的核心数据替代方案

我一直在使用 Core Data 开发几个 iOS 应用程序,它是一个很好的框架。但是,我遇到了一个问题,即我们或多或少地跨多个平台分发对象(同步)。Web/数据库服务器后端和移动设备。

虽然直到现在还没有成为问题,但 Core Data 使用的数据模型的静态特性让我有点卡住了。基本上,所要求的是一个动态表单系统,可以在服务器上创建表单并将其传播到设备。我知道使用一组表执行此操作的技术,例如:

  • 表格
  • 字段表
  • Forms 表的实例
  • 实例值表

只是将所有东西连接在一起。然而,我想知道的是,是否有一个替代核心数据的系统(上面的东西直接与 SQLite 数据库对话)将允许更动态的对象图。如果有在运行时修改模式的选项,即使是标准的 ORM 也会很好。我想走这条路的主要原因是为了提高性能,因为我不希望实例值表随着条目(在本地设备或服务器上)爆炸。

我的另一个选择是在 iOS 设备上拥有静态架构(对象图),但在服务器端有一个转换层,它获取正确的对象、填充属性并将其保存到正确的表中。然后,当设备开始同步时,它会执行相反的操作并将其分解为多个实例。虽然这可以避免服务器出现臃肿的实例值表,但它仍然可能是设备上的问题。

任何建议表示赞赏。

0 投票
1 回答
247 浏览

c# - FluentNhibernate,检索部分对象图

因此,我将使用 FluentNHibernate 调用存储库来检索复杂对象图的根对象。但是对于某些子级别的对象,我不想检索所有元素,而只想检索日期参数等于特定条件的那些元素。在下面的代码中,我希望通过 OrderTime 字段以这种方式过滤较低级别的 Order 对象。

这意味着我想检索所有用户组的所有用户,但每个用户的订单对象应仅包含来自特定日期或日期范围的订单。

那么关于如何检索此对象图,我有哪些选择?我不想延迟加载,我只想指定几个不同的检索条件,这些条件永远不会改变。所以它们可以是存储库的独立功能,就像最后建议的那样。但是我将如何对这些方法进行编码,如何指定这些条件?

对象:

存储库:

潜在的新存储库方法:?

0 投票
2 回答
689 浏览

data-structures - 两个层次结构的单向同步

我希望编写一个算法来同步两个层次结构。这些结构可以是对象图、存储在关系数据库表中的数据等(甚至是两种不同的结构,只要它们具有可比较的键)。同步将是单向的,即,一个结构将是原型,而另一个将被修改以匹配。

假设我们有一个sync函数。它需要接受以下内容:

  1. objA- 原型
  2. objB-- 要修改的对象
  3. keyA-- 密钥生成函数objA
  4. keyB-- 密钥生成函数objB
  5. addB-- 创建一个函数objB(返回新的 id objB
  6. setB-- 更新函数objB
  7. remB-- 删除一个函数objB
  8. parB-- 父级的 id objB-- 传递给addB上下文

所以我们有这个:

现在这就是我遇到麻烦的地方。'a并且'b是分层的,因此该函数需要知道它应该遍历哪些属性(一旦它比较它们的键'a'b确定它们到目前为止匹配并且应该进一步遍历)。对于这些“子”属性,它需要传递给同步的所有相同参数,但它们各自的类型。

这是当它变得很明显这是一个数据结构问题的时候。如何将这些信息链接在一起,以便可以将根对象传递给sync它并向下遍历图形?我最初的想法是将所有参数合并到一个类中,该类将具有子属性(ResizeArray相同类型的)。但是对于具有不同类型的各种属性,我想不出一种方法来使它工作,除了将类型扔出窗外并制作大部分或全部类型参数obj

所以这是我的问题:

  1. 是否有一种行之有效的方法来做到这一点(我还没有找到任何东西)
  2. 我可以使用什么数据结构来封装完成这项工作所需的数据?

我已尽力彻底解释这一点,但如果有任何不清楚的地方,请询问,我会尽力提供更好的信息。

0 投票
3 回答
2085 浏览

javascript - 在 javascript 中从平面对象数组构建对象图

我有一个 javascript 对象数组,其对象如下所示:

itemId
名称
parentItemId <== 没有父级的顶级项目具有空值

我想构建一个图表,其中父项包含子项数组,如果适用,这些子项具有子项数组。

什么是解决这个问题的好方法?