mvc5调用c语言实现的dll,使用MVC5+Entity Framework6的Code First模式创建数据库并实现增删改查功能...

此处采用VS2017+SqlServer数据库

一、创建项目并引用dll:

1.创建一个MVC项目

2.采用Nuget安装EF6.1.3

二、创建Model

在models文件夹中,建立相应的model文件,这里建立的class名,就是数据库里表的名字。

在这里面,可以建立表之间的关系,本次将建立Course(课程)、Student(学生)、StuCourse(课程学生关系)来作为一个Demo

[Table("t_course")]   //可以通过Attribute的形式修改自动生成的表名,否则将生成courses复数形式的表

public class Course

{

public int ID { get; set; }

[Required]

public string course_Name { get; set; }

public string course_code { get; set; }

public virtual ICollection StuCousers { get; set; }

}

public class Student

{

public int ID { get; set; }

[Required]

[MaxLength(10)]

public string stu_Name { get; set; }

public string stu_Pwd { get; set; }

public string stu_sex { get; set; }

public int stu_age { get; set; }

public virtual ICollection StuCousers { get; set; }

}

public class StuCourse

{

public int ID { get; set; }

public int StudentID { get; set; }

public int CourseID { get; set; }

public virtual Student Student { get; set; }

public virtual Course Course { get; set; }

}

三、新建一个Dal文件夹,用来建立Database Context

public class EFDBContext:DbContext

{

public EFDBContext() : base("EFDBContext") //数据库链接的Web.config中结点名字

{

}

public virtual DbSet Students { get; set; }

public virtual DbSet Courses { get; set; }

public virtual DbSet StuCouse { get; set; }

}

四、配置数据库连接信息

在WebConfig文件中增加connectionStrings节点,填写数据库连接信息,此处是我本机所装的sql server,提前建好的Database:CodeFirst

注意此节点的位置,不能放在第一,否则会报错。

8e2ce705f9e7cd98fb0e66f3525e75ab.png

五、生成数据库迁移文件,并更新DB

1.工具 -> 库程序包管理器 -> 程序包管理器控制台

2.运行命令 Enable-Migrations,

这时候,你会发现在程序端多出一个文件夹叫Migrations,这里面有一个Configuration.cs文件

3.运行命令Add-Migration,此命令会在Migrations文件下新增一个数据库迁移文件,文件内容为创建或修改数据库的表的代码

4.运行命令Update-Database 或Update-Database -Force,执行最新数据库迁移文件,更新DB中的表信息

ad4684c3086328adb89909ae29b2c378.png

在创建好表之后要修改表很简单,直接修改Model,然后执行Add-Migration,会自动产生一个数据库迁移文件,在执行Update-Database就会更新数据库中的表了;

还有一种方式可以开启自动迁移,修改Migrations文件夹下Configuration,将AutomaticMigrationsEnabled的值修改为true即可,这样一来再修改Model后就可以直

接执行Update-Database命令来更新DB了

538eef3c2a153872132dee2108879872.png

六、创建Control并实现增删改查功能(EntityFramework的脚手架会自动根据Model帮我们生成增删改查功能及View,而且还自带Bootstrap样式)

1.添加Control并选择包含视图的MVC5控制器

1fe1fc9c9655842fd09ff29f63bbb58d.png

2.下拉框选择创建模型类和数据库上下文类

2a62e57e021dcc5512c84e8d8752390d.png

点击添加出现如下弹出框就开始自动生成增删改查页面及相应功能

2bf507a2b5568002d04e903563788df8.png

可以看到Controller和Views文件夹帮我们生成了如下文件:

4c2bb3bcc4638eb59fb8cff058391859.png   

c6e38aa64ba0d6d0f6ed23d6dc0e12dc.png

3.更改RouteConfig文件,设定Students的Index为默认启动项

f0212dffa93eaa21475393fc65d15d2f.png

4.运行程序结果如下,此时增删改功能已经可以正常使用

dbdd65bf36a087b3db25dbd67e17768b.png

时间: 04-16

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值