2017-03-27 5 views
1

エンティティフレームワーク6.1.3モデルの最初のアプローチを使用します。 私はfollowingという単純なモデルを設計する必要がありました。dbcontext自動生成コードでEntity Frameworkエンティティを見つけることができません

私はデータベースを作成するためにsqlを生成しましたが、私のエンティティセットが私のDbContextで定義されていないことがわかりました。手動で追加しようとしましたが、Entity Frameworkは次のコードを再生成します。 抽象エンティティを生成するのは、それが設計されたエンティティの正反対です。

public partial class UploadsDataModelContainer : DbContext 
{ 
    public UploadsDataModelContainer() 
     : base("name=UploadsDataModelContainer") 
    { 
    } 

    protected override void OnModelCreating(DbModelBuilder modelBuilder) 
    { 
     throw new UnintentionalCodeFirstException(); 
    } 
    public virtual DbSet<AzureBlobs> AzureBlobs { get; set; } 
} 

これはEFコードジェネレータのバグですか、モデル作成のステップがありませんか?私は以下の内容を含むクラスファイルを追加し、それがDbContext.csファイルの自動更新を回避することにより、私の問題を解決しRicardoPeresへ

+0

あなたはおそらく自分のテーブルに両方のサブタイプをマップしたいです。 TPH対TPTまたはTPC継承を参照してください。エンティティセット名をデザイナに追加します。 –

+0

Visual Studioでは部分クラスが生成されるので、同じUploadsDataModelContainerコンテキストを持つ新しいファイルを追加し、関連するプロパティを追加できます。public DbSet アップロード{get;セット; } –

+0

@RicardoPeresそれは私がそれを試して、あなたにフィードバックを与えることは事実です。ありがとうございました。 –

答えて

1

ありがとう:

public partial class UploadsDataModelContainer : DbContext 
{ 

    public virtual DbSet<Chunk> CHunks { get; set; } 
    public virtual DbSet<Upload> Uploads { get; set; } 

} 
関連する問題