资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

MVC中怎么利用EntityFramework生成数据库模型

MVC中怎么利用EntityFramework生成数据库模型,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

成都创新互联主要从事成都网站设计、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务新抚,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

首先打开VS2013,新建Web项目mcc,使用MVC模板。

右击引用,管理NuGet程序包,安装EntityFramework。

在Model文件下新建类Employee,新增几个属性,比如:EmployeeId,FirstName,LastName,Salary。

public int EmployeeId { get; set; } public string FirstName { get; set; } public string LastName { get; set; } public int Salary { get; set; }

引用using System.ComponentModel.DataAnnotations; 将EmployeeId 设置为主键。

MVC中怎么利用EntityFramework生成数据库模型

在Web.Config里面设置数据库连接字符串

在根目录下新建文件夹DataAccessLayer,新建类SalesERPDAL,继承DbContext。

在 CodeFirst 模式,根据实体类生成对应数据库表。

public class SalesERPDAL : DbContext     {         public SalesERPDAL() : base("MyDBConnectString")//数据库连接字符串         {             this.Configuration.ProxyCreationEnabled = true;             var aaa = new DbMigrationsConfiguration();//设置自动迁移属性             aaa.AutomaticMigrationsEnabled = true;         }         protected override void OnModelCreating(DbModelBuilder modelBuilder)         {             modelBuilder.Entity().ToTable("TblEmployee");//设置生成对应数据库表的名称             base.OnModelCreating(modelBuilder);         }           public DbSet Employees { get; set; }     }

此时,基本设置完成,开始使用命令创建数据库,生成表。

打开工具-NuGet程序包管理器-程序包管理器控制台

输入命令:Enable-Migrations ,允许迁移。

MVC中怎么利用EntityFramework生成数据库模型

输入命令:Enable-Migrations -ContextTypeName  aaa.DataAccessLayer.SalesERPDAL,指定迁移类型。

MVC中怎么利用EntityFramework生成数据库模型

输入命令:Add-Migration ,将挂起的模型更改写入基于代码的迁移。

Name:update(随意输入)

MVC中怎么利用EntityFramework生成数据库模型

MVC中怎么利用EntityFramework生成数据库模型

输入命令: Update-Database -Verbose,执行生成命令,创建数据库,更新表。

MVC中怎么利用EntityFramework生成数据库模型

关于MVC中怎么利用EntityFramework生成数据库模型问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。


分享标题:MVC中怎么利用EntityFramework生成数据库模型
URL标题:http://cdkjz.cn/article/gsidic.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220