【问题标题】:Self Referencing Table LINQ自引用表 LINQ
【发布时间】:2011-01-17 14:23:33
【问题描述】:

您好,我有一个包含“id”字段和“parentid”字段的表。这两个字段都是必需的,因此您不能将 null 插入 parentid 列以将其标记为层次结构的“根”。我在使用 linq 时遇到问题,当我创建一个新的“根”时,我必须输入一个虚拟的 parentid,直到我知道新根的 id,然后我必须用正确的 id 更新 parentid 字段并保存它再次。这似乎很愚蠢,但我还没有找到更好的方法来完成这个?

TableWithHeirachy xobj = new TableWithHeirachy();
xobj.property1 = "test";
db.TableWithHeirachy.InsertOnSubmit(xobj);
db.SubmitChanges();
xobj.parentid = xobj.id;
db.SubmitChanges();

这看起来很糟糕。请告诉我有更好的方法!

【问题讨论】:

    标签: asp.net linq linq-to-sql


    【解决方案1】:

    在插入完成之前,SQL 语句不会知道它即将插入的行的未来 ID。

    所以,要么像现在一样继续 - 要么使用特殊值来指示根记录(null、-1 等)。

    【讨论】:

      猜你喜欢
      • 2020-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-28
      相关资源
      最近更新 更多