如何在Entity Framework中为自动生成的类添加自定义方法?

时间:2011-05-18 02:27:48

标签: c# .net entity-framework design-patterns

我有一个有两种方法的课程如下:

public class WorkManagement
{
    public string DoYourWork(Manager manager)
    {
        //
    }

    public string DoYourWork(Employee employee)
    {
        //
    }
}

Manager和Employee是从数据库生成的类(在Entity Framework中)。我认为这很难看,例如,当我需要扩展更多类时,所以我想将其重构为:

 public interface IDoWork
 {
    string DoSomeWork();
 }

public class Manager:IDoWork
{
    public string DoSomeWork()
    {
        //
    }
}

public class Employee:IDoWork
{
    public string DoSomeWork()
    {
        //
    }
}

但是我如何处理自动生成的类?我如何添加这些东西?

谢谢。

1 个答案:

答案 0 :(得分:8)

自动生成的代码会创建部分类。

public partial class Manager : EntityObject

所以你只需要向分部类添加一个文件,如下所示:

public partial class Manager : IDoWork
{
   public string DoSomeWork()
   {
   }
}

Reference to MSDN

How to: Customize Generated Data Objects