将多行插入数据库,其中每行引用c#LINQ中的另一行

时间:2014-03-26 19:08:46

标签: c# linq-to-sql parent-child

我试图在数据库中存储树结构。为了示例,我使用单个表,其中每行可以引用另一行。

Id | Name | Parent
------------------
 1 | t1   | NULL
 2 | t2   | 1
 3 | t3   | 1
 4 | t4   | 2
 5 | t5   | 3

我当前填充表格的方法是单独提交每一行,然后再次查询以获取父ID。我认为必须有更好的方法来做到这一点,减少查询和所有查询。

任何帮助都会很棒。

由于

1 个答案:

答案 0 :(得分:0)

考虑将一个表值参数传递给一个存储过程,并让该过程执行繁琐的操作。 LINQ to SQL可能无法处理这个问题,但使用普通的旧ADO.Net执行此操作的代码并不算太差。

Here is the documentation on table valued parameters

Here is a tutorial on how to use them