将变量添加到Entity Framework创建的模型类中,而无需编辑实际的数据库列?

时间:2018-11-20 00:17:31

标签: c# asp.net-mvc entity-framework

我最近刚刚开始在mvc5中创建.net Web应用程序。我试图像往常一样搜索答案,而不是问一个问题,但我不确定该如何措辞,但可以解决:

我有一堂课

public partial class employee
{
   public string FirstName { get; set; }
   public string MiddleName { get; set; }
   public string LastName { get; set; }
}

在其中使用Entity Framework使用“数据库优先”向导创建的类。 (标记的原因)

我所做的是从数据库中获取FistName,MiddleName和LastName。在其中,我成功地通过控制器完成了该ActionResult。

[ChildActionOnly]
 public ActionResult Nav()
 {
     employee user;
     using (DatabaseEntities context = new DatabaseEntities())
     {
         user = context.employees.FirstOrDefault(e => e.FirstName ="Bob");
         if (!System.IO.File.Exists(Server.MapPath(user.imagefile)))
         {
              user.imagefile = $"/Content/Images/user/{user.FirstName[0]}.png";
         }
     }
     return PartialView("_Nav", user);
 }

现在我想知道是否有可能,如何在不向数据库添加列的情况下为该类创建另一个项目。我想向数据库调用之后获得的类中添加一个FormattedName变量,以获取模型(用户)以包括新变量(FormattedName),该变量从该类中的现有变量获取其值。

我知道措辞和术语可能会用完,但任何帮助都将是巨大的,而且需要事先提供。

编辑:

在评论部分,我被告知有关属性ex。[NotMapped]的信息,这是我绝对需要知道的信息。但是对于这个特定问题,它不起作用。一切正常,直到我使用实体框架更新了模型,属性消失了,必须每次模型更新都添加它们,这对我来说并不理想。我继续并编辑了数据库,使其包含(FormattedName)列,因此此问题已得到解决。但是我仍然很想知道这是否可行。

0 个答案:

没有答案