テーブルを含むデータベースの例を使用すると、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。
質問の意味がわからなかった場合は、具体的に何をしたいのかを詳しく教えてください。