標準モデルがあります。asp.net MVC Scaffolderを、dbcontextから2つのサブクラスであるコンテキストで使用する方法
私は必要な機能を追加するためにdbcontextを継承する基本コンテキストクラスを用意しています。
public class MyContext : DbContext
{
public void MyFeature() {
}
}
私はその後、私の実際のデータコンテキスト持っている:私はあなたがコントローラを作成する際に建てscaffolderを使用したいが、私はエラー私が変更した場合は、「サポートされていないコンテキストタイプ」 を取得
public class DataContext : MyContext
{
public DbSet<Category> Categories { get; set; }
public DbSet<Product> Products { get; set; }
}
をdbcontextから継承するdatacontextは直接動作しますが、この時点では追加された機能を使用するものがたくさんあるため、継承を変更することはできません。そして、私はもちろん、機能を単純化していますが、実際にはかなりたくさんのものがあります。したがって、datacontextに直接追加すると作業量が増えます。さらに、scaffolderはdatacontextがdbcontextであることを確認するのに十分なスマートにする必要があります。
私のdatacontextでスキャフォルダーを使用するにはどうすればよいですか?
私はあなたの権利を考えています、インターフェイスを持つコンポジションは唯一の方法です。プロパティとしてDbDetailsを持つDataContextのインターフェイスを使用し、DbDetailsに余分なものが必要になるようにします。 – Solmead
@Solmead私はそれが唯一の方法ではないと確信していますが、私はこの方法を間違いなく望んでいます。がんばろう! –