DbSetは、データベース内のテーブルまたはビューに対応し、一方、DbContextは、データベース(またはデータベース内のテーブルおよびビューの集合)に対応します。それで、あなたは両方の組み合わせを得ることが理にかなっています!
DbContextオブジェクトを使用してテーブルとビュー(DbSetで表される)にアクセスし、DbSetを使用してテーブルデータへのアクセス、作成、更新、削除、変更を行います。
データベースに10個のテーブルがあり、アプリケーションが5個(テーブル1〜テーブル5と呼ぶことにします)の場合は、MyAppContextクラスが定義されているMyAppContextオブジェクトを使用してアクセスしてください。
public class MyAppContext : DbContext
{
public MyAppContext() : ;
public DbSet<Table1> Table1 { get; set; }
public DbSet<Table2> Table2 { get; set; }
public DbSet<Table3> Table3 { get; set; }
public DbSet<Table4> Table4 { get; set; }
public DbSet<Table5> Table5 { get; set; }
}
例えば、識別子Table1は、定義されたコンテキストタイプのタイプの名前とプロパティの名前の両方として使用されます。上記の内容は非常に典型的なものです。テーブルスキーマに対応するクラスの例を以下に示します:
public class Table1
{
public int Id {get; set;}
public string AStringField {get; set;}
//etc.
}
は、詳細についてはこちらをご覧:一般http://entityframeworktutorial.net/
、私はDbSet' 'の型パラメータを表現することが通例であると考えています単数形で、プロパティ名は複数形式で入力します。次に例を示します。 'public DbSet Customers {get;セット; } ' –
DavidRR