繁体   English   中英

LINQ to SQL,如何为一张表建立一对多关系?

[英]LINQ to SQL, How to make a one to many relationship for one table?

我需要实现这种关系:

  • 每个文件夹中可以包含许多文件夹。
  • 每个文件夹可以位于一个父文件夹中。
  • 并且在许多其他文件夹中可以有该文件夹的快捷方式

因此,我认为这仅涉及一个表, folder 如何应用这些关系? 谢谢。

[Table]
public class Folder
{
    private int id;
    [Column(DbType = "INT NOT NULL IDENTITY", IsDbGenerated = true, IsPrimaryKey = true)]
    public int Id
    {
        get { return id; }
        set
        {
            id = value;
        }
    }

    private string name;
    [Column]
    public string Name
    {
        get
        {
            return name;
        }
        set
        {
            if (value != name)
            {
                name = value;
            }
        }
    }
}

与L2S相比,这更多是关于表设计的。 一旦在数据库中进行了此设计,Linq-2-sql部分就很简单了。

每个文件夹中可以包含许多文件夹。 每个文件夹可以位于一个父文件夹中。

这可能是一个Folder表,其表本身具有可选的外键,称为parent_folder_id或类似的名称。

并且在许多其他文件夹中可以有该文件夹的快捷方式

这可能需要一个额外的表或在文件夹表中进行一些调整,例如向其快捷方式文件夹中添加一个布尔值IsShortcut和第二个可选外键。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM