ASP.NET MVC 5.0模型类 - 如何在模型类中拥有属性但不创建数据库字段

时间:2014-02-21 21:03:15

标签: asp.net-mvc entity-framework

这个问题与ASP.NET MVC 5.0模型类有关。

我有一个ASP.NET MVC5.0模型类,例如看起来像这样

  public class Car
  {

        public int ID { get; set; }

        public string CarType { get; set; }

        public string SelectedType  { get; set; }

   }

但是,我不希望为此模型创建属性SelectedType的数据库字段。

是否有任何属性可以告诉实体框架不要为SelectedType创建数据库字段?

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

您可以使用Fluent API忽略;

modelBuilder.Entity<Department>().Ignore(t => t.Budget);

答案 1 :(得分:0)

您可以使用NotMapped数据注释排除特定属性,如下所示:

public class Car
{
    //
    [NotMapped]
    public string  SelectedType  { set; get; }
}

您也可以使用Fluent API执行此操作,但您需要覆盖OnModelCreating,如下所示:

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
   modelBuilder.Entity<Car>().Ignore(n => n.SelectedType   );
   base.OnModelCreating(modelBuilder);
}