我只需要一个框架结构的文件(图片,pdf或其他类型的打印文件).学习.Net框架时非常有用.
我正在考虑在我的应用程序中使用PostgreSQL的Ltree模块来帮助处理线程注释.我一直在讨论它用于线程评论.我认为这对于需要更新节点及其子节点的情况有帮助,例如当您想要隐藏注释及其回复时.
我正在考虑它(或类似的东西)如果它与传统的邻接列表("comment_id"/"parent_comment_id")相结合将是有用的.
在开始使用ltree之前,我想知道一些事情:
如果它有任何帮助,这里是我正在考虑的架构:
CREATE TABLE comments (
comment_id SERIAL PRIMARY KEY,
parent_comment_id int REFERENCES comments(comment_id) ON UPDATE CASCADE ON DELETE CASCADE,
thread_id int NOT NULL REFERENCES threads(thread_id) ON UPDATE CASCADE ON DELETE CASCADE,
path ltree NOT NULL,
comment_body text NOT NULL,
hide boolean not null default false
);
Run Code Online (Sandbox Code Playgroud)
ltree使用的"path"列看起来像:
<thread_id>.<parent_comment_id_#1>.<parent_comment_id_#2>.<my_comment_id>
Run Code Online (Sandbox Code Playgroud)
在路径中使用主键有什么问题吗?我应该在路径中包含节点自己的主键吗?如果我这样做,在它上面放一个唯一的索引作为约束是否有意义?
我正在开发一款拥有大量动态实体的2D游戏.为了好玩,让我们称他们为士兵,让我们说有50000个(我只是随机想起来,它可能会更多或更少:)).
所有这些士兵都按照规则移动每一帧 - 想想boids/flocking/steering行为.对于每个士兵来说,为了更新它的运动,我需要最接近我正在处理的X士兵.
什么是最好的空间层次结构来存储它们以方便这样的计算而不需要太多的开销?(每帧都更新/移动所有实体,因此它必须非常好地处理动态实体)
我试图理解EF4中的继承映射.
我的数据库有两个表,结构如下:
PersonCategory表:
人员表
PersonCategory表有四个条目,每个条目代表一个类别 - Student,CourseInstructor,Staff和Advisor.
从在线阅读文章,我认为Table Per Hierarchy将是适用于此场景的模型.所以在EF4中,我创建了四个实体(Student,CourseInstructor,Staff和Advisor),每个实体都继承自Person表.然后我将它们中的每一个映射到Person表并向每个表添加一个条件(例如,StudentID = 1表示Student实体,CategoryID = 2表示Staff实体)以区别于其他表.我还从Person表中删除了CategoryID属性并使其成为抽象类.但是我收到以下错误,因为我从Person表中删除了CategoryId属性.
错误3015:从第101,108,114,120,126,133行开始映射片段时出现问题:从表Person(CategoryID)到表PersonCategory(CategoryID)的外键约束'FK_Person_PersonCategory'::映射不足:必须映射外键一些参与概念方面的外键关联的AssociationSet或EntitySets.
Table Per Hierarchy是适用于此场景的模型吗?如果没有,那么我应该如何在EF4中处理这种情况?
.net inheritance hierarchy entity-framework-4 table-per-hierarchy
我正在创建一个植物数据库,其中的植物将按其分类法进行组织:
Life Domain Kingdom Phylum Class Order家族属
我正在考虑使用MySQL中管理分层数据这一文章提出的例子,但是它将上面的列表添加为表格中的记录....我不确定这是否是最好的事情,因为我会每个属有多个物种,每个家族有多个属,等等.你会建议什么是解决这个问题的最佳方法.提前致谢.
我想知道是否有一种方法可以在规则之间定义层次结构(而不仅仅是执行顺序)并控制规则执行 - 即如果父规则被触发,那么下面的规则不应该被评估等等......
此线程中的信息是一个选项,但它基本上是IF/THEN/ELSE
有不同的选择吗?
谢谢
我现在正在寻找几个小时但是找不到令人满意的答案,即使它似乎是一个简单的noobish问题.我基本上想要完成的是将当前位于项目文件夹之外的.git目录移动到项目文件夹中.最好这不应该改变存储库历史记录,尽管我不知道这是否真的可行.我想这样做的原因有点像IDE /项目类型相关的问题,我可以用这种方式解决.
我感谢任何帮助,谢谢.
C#| .NET 4.5 | 实体框架5
我有一个以ID,ParentID,Name形式从SQL查询返回的数据.我想获取该数据并将其解析为Hierarchical JSON字符串.到目前为止,它似乎更应该是一项艰巨的任务.因为我正在使用Entity,所以数据作为IEnumerable很好地回馈给我.现在我相信我只需要某种形式的递归,但我不太清楚从哪里开始.任何帮助表示赞赏.
数据返回为
id parentId name 1 1 TopLoc 2 1 Loc1 3 1 Loc2 4 2 Loc1A
代码是
public static string GetJsonLocationHierarchy(long locationID)
{
using (EntitiesSettings context = new EntitiesSettings())
{
// IEnumerable of ID,ParentID,Name
context.GetLocationHierarchy(locationID);
}
}
Run Code Online (Sandbox Code Playgroud)
最终结果我希望是这样的:
{
"id": "1",
"parentId": "1",
"name": "TopLoc",
"children": [
{
"id": "2",
"parentId": "1",
"name": "Loc1",
"children": [
{
"id": "4",
"parentId": "2",
"name": "Loc1A",
"children": [
{}
]
}
]
},
{
"id": "3", …Run Code Online (Sandbox Code Playgroud) 有没有一种规范的方式来表达一个函数,它是一个有根函数树的组合?
这是一个具体的例子,我的意思是"功能树的组成".取一个根节点的树,其节点由函数标记,如下所示:
节点处的每个函数都是其子节点处的函数的组合.与树相关联的函数本身就是组合
F = a0(b0(c0(e0, e1, e2)), b1(d0(f0), d1(g0, g1)))
Run Code Online (Sandbox Code Playgroud)
更明确地,F是由叶子上的函数计算的6个参数的函数:
F(x0, ... , x5) == a0(b0(c0(e0(x0), e1(x1), e2(x2))),
b1(d0(f0(x3)), d1(g0(x4), g1(x5))))
Run Code Online (Sandbox Code Playgroud)
一般问题
T,以及一个L与节点对应的函数列表T,是否有一种规范的方法来编写F参数的函数T并L返回L根据树结构化的函数的组合T?以这种方式,组合物的"布线" - 树T- 与其内部"组件" - 列表分开L."规范"解决方案尤其应该包括自然适应该问题的表示T和L自然适应.
我怀疑这个问题在函数式编程语言中有一个简单的解决方案,但理想情况下我希望有一个像Python这样的动态类型命令式语言的解决方案,类似于
def treecomp(tree, list_of_funcs):
...
return function
F = treecomp(T, L)
Run Code Online (Sandbox Code Playgroud)
与此同时,我想出了自己的解决方案(发布在下面).
虽然我对其经济和概念简单性感到满意,但我仍然对其他本质上不同的方法感兴趣,特别是那些利用Python中缺乏或支持不足的另一种语言的优势的方法.
使用适当的数据结构 - 基本上不会重现所需的输出! - …
python functional-programming hierarchy function-composition
我有一个数据表,其中包含媒体,文档,PDF和文件夹列表.与Google云端硬盘相同,我想在数据表的顶部显示痕迹.数据表反映了通过jQuery点击任何文件夹时的更改.除了面包屑外,所有的东西都准备好了.我有当前打开的文件夹的ID,但我不知道如何从根到当前文件夹获取层次结构.
目前它给我父ID和名称而不是整个层次结构.
注意: - 列之间没有关系,因为它在同一个表中.
实体字段: -id, nameDisplay, parentId
实体定义: -
/**
* driveall
* @ORM\Table(name="Driveall")
* @ORM\Entity(repositoryClass="DriveBundle\Repository\DriveallRepository")
*/
class Driveall
{
/**
* @var int
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
* @ORM\Column(name="Name_Display", type="string", length=255)
*/
private $nameDisplay;
/**
* @var int
* @ORM\Column(name="ParentID", type="integer")
*/
private $parentID;
/**
* Get id
* @return int
*/
public function getId()
{
return $this->id;
}
/**
* Set nameDisplay
* …Run Code Online (Sandbox Code Playgroud)