- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
几天来一直在尝试解决这个问题,但没有任何进展,我的问题是:
Given an entity in a hierarchy, return a list of the immediate-ascendants (or parents) of the entity.
当我想知道“实体 1.2.2.2”的层次结构时,它会返回一个仅包含粗体项的列表:
Entity 1- Entity 1.1- Entity 1.2 - Entity 1.2.1 - Entity 1.2.2 - Entity 1.2.2.1 - Entity 1.2.2.2 - Entity 1.2.3 - Entity 1.2.4 - Entity 1.2.4.1- Entity 1.3- Entity 1.4Entity 2...
Hence, expected result:
Entity 1- Entity 1.2 - Entity 1.2.2 - Entity 1.2.2.2
Implementation code:
class Entity
{
public Entity Parent { get; set; }
public bool AbsoluteParent
{
get
{
return Parent == null;
}
}
public IEnumerable<Entity> Hierarchy //problem
{
get
{
return AbsoluteParent
? new [] { this }
: new [] { this }.Concat( Parent.Hierarchy );
}
}
}
上面的数组尝试只是我一直在尝试的选项之一,该代码实际上返回如下内容:
Entity 1Entity 1- Entity 1.2Entity 1- Entity 1.2 - Entity 1.2.2Entity 1- Entity 1.2 - Entity 1.2.2 - Entity 1.2.2.2
我能够使用 jQuery 的 parents()
函数实现预期的结果,我一直在阅读 yield return
关键字,但仍然停留在更多(我猜) 函数式风格,我还在蹒跚学步。
最佳答案
迭代器 block 是否可以接受?
public IEnumerable<Entity> Hierarchy
{
// note: buffers results
get { return UpwardHierarchy.Reverse(); }
}
public IEnumerable<Entity> UpwardHierarchy
{
get
{
// genuine lazy streaming
for (var entity = this; entity != null; entity = entity.Parent)
yield return entity;
}
}
另一种选择:使用 MoreLinq's 生成
:
return MoreEnumerable.Generate(this, entity => entity.Parent)
.TakeWhile(entity => entity != null)
.Reverse();
关于c# - 为层次结构中的实体获取父级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4196487/
我正在尝试将多个水平链接的 Button 和 TextView 垂直链接为 View 集,但仍保持平面 View 层次结构。这是我的初始布局和代码:
到目前为止,我已经在Google BigQuery上训练了几种模型,目前我需要查看模型的外观(即架构,损失函数等)。 有没有办法获取这些信息? 最佳答案 仔细阅读文档后,我可以说该功能尚不存在。我什至
本文实例讲述了PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)。分享给大家供大家参考,具体如下: 前言: 深度优先遍历:对每一个可能的分支路径深入到不能再深入为止,而且每个
我是一名优秀的程序员,十分优秀!