我使用实体框架来产生如下一个“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
}
有没有办法做到这一点,或者我应该去现有的设计?
你可以解决它与一个2级继承 – 2012-07-26 07:12:01
DemoralizeBase可以从EntityObject继承。 CClass继承自DemoralizeBase。 – James 2012-07-26 07:12:13