环境
使用的软件及版本
- Microsoft Visual Studio Ultimate 2013 (版本 12.0.40629.00 Update 5)
- Microsoft.Net Framework 版本 4.6.01055
- MySQL版本: 5.6.17
步骤
1. 创建空的MVC项目
2. 安装扩展
Install-Package EntityFramework
Install-Package MySql.Data.Entity -Version 6.9.9
3. 在数据库中建立对应的表
必须在数据库内先新建表,否则asp.net mvc会在本地建立local database。
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for t_movie
-- ----------------------------
DROP TABLE IF EXISTS `t_movie`;
CREATE TABLE `t_movie` (
`f_id` int(11) NOT NULL AUTO_INCREMENT,
`f_title` varchar(50) DEFAULT NULL,
PRIMARY KEY (`f_id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
SET FOREIGN_KEY_CHECKS=1;
4. 在web.config中建立connection string
<add name="MovieDBContext" connectionString="Data Source=localhost;port=3306;Initial Catalog=mvc;user id=root;password=;Charset=utf8;" providerName="MySql.Data.MySqlClient" />
5. 新建Model类
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity;
using System.Linq;
using System.Web;
namespace mvc5mysql.Models
{
[Table("t_movie")]
public class Movie
{
[Column("f_id")]
public int ID { get; set; }
[Column("f_title")]
public string Title { get; set; }
}
public class MovieDBContext : DbContext
{
public DbSet<Movie> Movies { get; set; }
}
}
这里面,我做了个注解(Annotation),可以设置表和字段的别名,默认情况下,表名就是类名,字段名就是属性名。
6. 添加Controller
添加一个有模型的Controller:MovieController。
7. 访问
这个时候应该已经OK了,我们可以访问 http://localhost:34238/movies ,这个里面的数字可能不一样,是随机的。
可以发现,在数据库里已经有了: