以下のように、エンティティ フレームワークを使用して「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();
}
}
以下にリストされている 2 つのメソッドは、設計全体で共通の実装を持っているため、それらを DemoralizeBase と呼ばれる基本クラスに移動したいと考えています。これにより、コードの変更が必要になった場合でも、一貫性が管理しやすくなります。
// in DemoralizeBase
public void Demoralize(Func<IDemoralize, bool> CustomDemoralization)
{
//implementation
}
public void WriteModel(Func<IDemoralize, bool> Write)
{
// implementation
}
これを行う方法はありますか、それとも既存のデザインを使用する必要がありますか?