如何基于数据库内容创建模型变量

时间:2015-03-18 12:48:58

标签: asp.net asp.net-mvc

我很乐意获得帮助,是根据表数据设置模型变量。

例如,在我的数据库中,我可能有一个设施表,例如:

Toilet int, Sink int, Bath int, Rug string

非常糟糕的例子但是,这些值可能会在数据库中从表单输入中更改,或者可能会根据用户输入添加更多设施。

现在对我而言,这不是一个问题,但我想知道的是;在我的模型中我get;set; [HttpPost]的值如下:

[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Index(NewBooking model)
{
   if (!ModelState.IsValid)
   {
       return View("~/Views/Timetabler/Booking/Index.cshtml", model);
   }


   return View("~/Views/Timetabler/Booking/Index.cshtml", model);
}

所以在我的模型中,我不知道变量是什么,它们可能是厕所,接收器等,但它们可能是其他的,因此这样的东西不合适:

namespace build_01.Models.Timetabler
{
    public class NewBooking
    {
       public string Toilet { get; set; }

     }
}

如果有的话,我怎样才能根据数据库表内容创建我的模型变量?

1 个答案:

答案 0 :(得分:0)

我可以建议使用Entity Framework生成数据库模型吗? 这非常简单,如果您对数据库表进行更改,则可以更新项目中的模型。 如果您已有数据库,则应使用“数据库优先”方法。确保每个数据库表都分配了一个主键。

https://www.asp.net/mvc/overview/getting-started/database-first-development/creating-the-web-application

在您的应用程序中,右键单击“模型”文件夹>添加>新商品> ADO.NET实体数据模型> EF Designer From Database ...按照屏幕上的步骤进行操作。

这将生成与数据库中的数据类型匹配的模型类。哦,如果您的项目还没有Entity Framework,请在Nuget中搜索它或在Nuget存储库中检查它。

https://www.nuget.org/packages/EntityFramework/