复制记录并保持关系

时间:2013-01-11 22:04:30

标签: entity-framework

我发现很难复制记录并保持当前的关系。我甚至不确定我需要做什么。

我的数据库非常大,但我会将我的示例限制为3个表。下面是代表这些表的类。

public class FiscalYear
{
    public FiscalYear()
    {
        this.Divisions = new HashSet<Division>();
    }

    public int FiscalYearId { get; set; };

    ...other members....

    public virtual ICollection<Division> Divisions { get; set; }
    ...more Navigation properties...
}

public class Division
{
    public Division()
    {
        this.Majors = new HashSet<Major>();
    }

    public int DivisionId { get; set; };
    public int FiscalYearId { get; set; }

    ...other members....

    public virtual ICollection<Major> Majors { get; set; }
    public virtual FiscalYear FiscalYear { get; set; }
    ...more Navigation properties...
}

public class Major
{
    public Major()
    {
        this.Courses = new HashSet<Course>();
    }

    public int MajorId { get; set; };
    public int FiscalYearId { get; set; }

    ...other members....

    public virtual ICollection<Course> Courses { get; set; }
    public virtual FiscalYear FiscalYear { get; set; }
    ...more Navigation properties...
}

数据库的几个表与一个会计年度挂钩。我想要做的是将记录从一个会计年度复制到下一个会计年度。因此,例如,如果我定义了2012年的会计年度 我想在2012年定义一个部门,比如IT,我希望能够创建一个新的财政年度 - 比如2013年 - 并复制从2012年到2013年的所有关系。但问题在于层次结构中的水平。每个部门都有很多专业,但这些专业也与财政年度挂钩。因此,我还需要为2013年财政年度创建新记录,并将这些新记录与2013年新部门相关联,但与2012年部门具有相同的关系。等等。

可以这样做吗?如果这让我感到困惑,我很抱歉 - 这太过我了。

0 个答案:

没有答案