设计图:
数据库:
use master
go
if exists(select * from sys.databases where name='QU')
drop database QU
create database QU
use QU
create table class
(
classID int not null identity primary key,
classname varchar(10) not null
)
create table studentinfo
(
ID int not null identity primary key,
studentname varchar(10) not null,
age int not null,
phone varchar(50) not null,
email varchar(50) not null,
Fk_classID int references class(classID)
)
insert into class values('1班')
insert into class values('2班')
insert into class values('3班')
insert into studentinfo values('木子洋1',12,'12345678901','12345@qq.com',1)
insert into studentinfo values('木子洋2',13,'12345678902','12345@qq.com',2)
insert into studentinfo values('木子洋3',14,'12345678903','12345@qq.com',3)
insert into studentinfo values('木子洋4',15,'12345678904','12345@qq.com',1)
insert into studentinfo values('木子洋5',16,'12345678905','12345@qq.com',2)
select * from studentinfo
新建一个MVC项目,创建EF框架(代码student这个控制器里面)
写完控制器编写视图:
return view这句话选择view右键——添加视图——
视图名称:可以不修改
模板:查询(list)添加(create)修改(edit)
模型类:选择自己当前操作的实体类(比如我查询用到的实体类是student)
数据上下文类:不选
——点击确定
查询
需要根据要显示的内容显示在models写一个新的实体类
public class Student
{
public int ID { get; set; }
public string studentname { get; set; }
public int age { get; set; }
public string phone { get; set; }
public string email { get; set; }
public Nullable<int> Fk_classID { get; set; }
public string classname { get; set; }
}
控制器代码:
/// <summary>
/// 列表显示
/// </summary>
/// <returns></returns>
public ActionResult Index()
{
//实例化显示上下文
QUEntities db = new QUEntities();
var stu = new Student();
var model = db.studentinfo .Where(s => true).Select(s => new Student()
{
age = s.age,
Fk_classID = (int)s.Fk_classID,
classname = s.@class.classname,
email = s.email,
ID = s.ID,
phone = s.phone,
studentname = s.studentname,
}).ToList();
return View(model);
}
/// <summary>
/// 获取学员的班级信息
/// </summary>
/// <returns></returns>
private List<SelectListItem> GetClassInfo()
{
//1.实例化数据访问上下文
using (var db = new QUEntities())
{
//2.查询学员班级信息
//3.构造学员班级信息数据
var classInfo = db.@class.Where(c => true).Select(c => new SelectListItem
{
Text = c.classname,
Value = c.classID.ToString()
}).ToList();
return classInfo;
}
}
视图:
@model IEnumerable<WebApplication11.Models.Student>
<script src="~/Scripts/jquery-1.10.2.js"></script>
<p>
@Html.ActionLink("Create New", "Create")
</p>
<h2>学员列表</h2>
<div class="form-group">
<label for="Name">姓名</label>
<input style="width:150px;" id="Name" name="Name" type="text">
<label for="Name">手机</label>
<input style="width:150px;" id="Name" name="Name" type=