テーブルを含むデータベースの例を使用すると、Product
これはあなたが達成しようとしていることです....
ただし、生成されたエンティティ クラスを引き続き使用します (標準の EF ジェネレーターまたは別の POCO ジェネレーターのいずれかを使用)。
よくわかりません-あなたがMEFについて言及しているように、それが直接関連しているとは思いません.
生成されたエンティティ クラスは、生成されたクラスを拡張できる部分クラスです。この場合は、インターフェイスを実装するために拡張します。
抽象化のレイヤーを導入するために次のインターフェースが使用されると仮定します...
public interface IEntity {
public bool IsDeleted { get; set; }
}
拡張Product
クラスを使用して新しいクラス ファイルを作成します...
public partial class Product : IEntity {
public bool IsDeleted {
get {
throw new NotImplementedException();
}
set {
throw new NotImplementedException();
}
}
}
これで、生成されたエンティティProduct
が部分クラスのカスタム コードで拡張され、EF を介して通常どおり使用できるようになりました。
UserManager
とValidationManager
クラスが へのハード参照を持つ代わりにProduct
、 への参照のみを持つようになりましたIEntity
。
質問の意味がわからなかった場合は、具体的に何をしたいのかを詳しく教えてください。