C# 修改实体框架中的Add方法

C# 修改实体框架中的Add方法,c#,.net,entity-framework,c#-4.0,C#,.net,Entity Framework,C# 4.0,我不熟悉实体框架技术,我刚从表中生成了3个类: 计划 资源 雇员 我想设置一个条件,即资源不能由两个项目使用,我想在我的项目的Add方法中如何修改它,甚至可以修改它吗 public partial class Project { public int Id { get; set; } public string Name { get; set; } public Nullable<int> Resource { get; set; } public

我不熟悉实体框架技术,我刚从表中生成了3个类:

  • 计划
  • 资源
  • 雇员
我想设置一个条件,即资源不能由两个项目使用,我想在我的项目的Add方法中如何修改它,甚至可以修改它吗

public partial class Project
{
    public int Id { get; set; }
    public string Name { get; set; }
    public Nullable<int> Resource { get; set; }
    public Nullable<int> Manager { get; set; }
    public Nullable<System.DateTime> StartDate { get; set; }
    public Nullable<System.DateTime> Deadline { get; set; }
    public Nullable<System.DateTime> EndDate { get; set; }

    public virtual Emploee Emploee { get; set; }
    public virtual Resource Resource1 { get; set; }
}
公共部分类项目
{
公共int Id{get;set;}
公共字符串名称{get;set;}
公共可空资源{get;set;}
公共可空管理器{get;set;}
公共可为空的起始日期{get;set;}
公共可为空的截止日期{get;set;}
公共可为空的结束日期{get;set;}
公共虚拟雇员{get;set;}
公共虚拟资源Resource1{get;set;}
}

您可以修改它,但当您再次生成时,它将覆盖。添加分部类并将方法放在那里

//Your partial class
public partial class Project
{

   public string DoCustomWork()
   {
   }

}

由于您首先使用的是数据,因此如果您希望资源对单个项目是唯一的,则在项目表中的资源FK上创建唯一约束。

您是使用代码优先、模型优先还是数据优先?这似乎是一种业务逻辑。在你调用
Add
方法之前,在你的业务层处理它。这是行不通的,因为我想在项目完成后再次使用该资源。