我正在使用实体框架生成一个“CClass”实体,如下所示:
public partial class CClass: EntityObject
{
#region Factory Method
#region Primitive Properties
}
我剩下的部分类实现是
public partial class CClass : IDemoralize
{
public Value xValue { get; set; }
public void IDemoralize.Demoralize()
{
// implementation
}
public void IDemoralize.Demoralize(Func<IDemoralize, bool> CustomDemoralization)
{
bool success = CustomDemoralization(this);
if (!success)
throw new ApplicationException();
}
public void IDemoralize.WriteModel()
{
// implementation
}
public void IDemoralize.WriteModel(Func<IDemoralize, bool> Write)
{
bool success = Write(this);
if (!success)
throw new ApplicationException();
}
}
现在,由于下面列出的两种方法在整个设计中确实有共同的实现,我想将它们移动到一个名为 DemoralizeBase 的基类中,因此如果代码需要更改,那么一致性就变得易于管理。
// in DemoralizeBase
public void Demoralize(Func<IDemoralize, bool> CustomDemoralization)
{
//implementation
}
public void WriteModel(Func<IDemoralize, bool> Write)
{
// implementation
}
有没有办法做到这一点,或者我应该使用现有的设计?