MVC使用EntityFramework(EF)生成数据库模型

运维 数据库运维
本文系列将向你介绍使用EntityFramework(EF)生成数据库模型。文章会一步一步的教您使用Entity Framewok4创建数据库。

首先打开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; } 
  • 1.
  • 2.
  • 3.
  • 4.

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

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

<add name="MyDBConnectString" providerName="System.Data.SqlClient" connectionString="Data Source=.;Initial Catalog=SalesERPDAL;user id=sa;password=sa"/>

在根目录下新建文件夹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<Employee>().ToTable("TblEmployee");//设置生成对应数据库表的名称 
            base.OnModelCreating(modelBuilder); 
        } 
  
        public DbSet<Employee> Employees { get; set; } 
    } 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.

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

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

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

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

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

Name:update(随意输入)

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

如上图,已经可以在数据库中查看到对应的表,可以插入数据,进行获取验证了。

责任编辑:武晓燕 来源: 博客园
相关推荐

2023-02-23 07:46:48

学习模型数据仓库

2010-05-07 14:29:45

Unix--Tripw

2021-05-10 09:22:44

.NET数据库项目

2025-03-05 08:40:43

项目数据库流程

2020-08-06 11:45:37

数据库文档Swagger

2009-12-30 14:12:53

ADO.NET Fra

2024-08-13 10:36:25

SpringScrew数据库

2011-03-23 09:54:47

数据模型数据库设计

2009-12-31 09:18:23

ADO.NET对象模型

2025-01-03 08:13:08

2020-12-24 10:20:43

文档工具语言

2011-03-04 09:40:42

AJAX开发集成数据库

2009-05-14 14:23:25

微软ado.netLINQ

2010-06-17 12:59:07

Oracle

2016-08-16 09:06:07

Entity FramT4模板sql语句

2022-07-12 10:48:27

Python数据日报命令

2024-12-04 14:56:10

2024-12-23 11:31:05

大模型检索人工智能

2024-03-20 08:37:34

数据处理Python数据分析

2023-11-06 06:39:36

数据分析Python
点赞
收藏

51CTO技术栈公众号