DB を直接更新するモデルがあります。
しかし、DB テーブルで更新したくないプロパティがある場合、それらのプロパティを DB テーブルに入れないようにマークするにはどうすればよいですか?
私のモデルは以下の通りです:
public class Blog
{
public int id {get;set;}
public int newid {get;set;} // which i want to unbind/exclude
}
DB を直接更新するモデルがあります。
しかし、DB テーブルで更新したくないプロパティがある場合、それらのプロパティを DB テーブルに入れないようにマークするにはどうすればよいですか?
私のモデルは以下の通りです:
public class Blog
{
public int id {get;set;}
public int newid {get;set;} // which i want to unbind/exclude
}
Entity Frameworkを使用していると仮定します(ちなみに、ASP.NET MVCはデータベースの意味がわからないため、質問で指定する必要があります。ASP.NET MVCはORMではなくWebフレームワークであることを思い出してください) 、次の[NotMapped]
属性でプロパティを装飾できます。
public class Blog
{
public int id { get; set; }
[NotMapped]
public int newid { get; set; }
}
明らかに、他のデータ アクセス テクノロジを使用してデータベースにクエリを実行している場合は、そのドキュメントをチェックして、一部のプロパティをマップから無視する方法を確認する必要があります。
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Customer>().Ignore(t => t.LastName);
base.OnModelCreating(modelBuilder);
}