1.首先我们需要在NuGet中下载entityframework的包
就是这个红色的
2.在Model文件夹中创建你需要的类型
grade类型
Student类型
3.在web.conify文件中写入
<connectionStrings>
<add connectionString="Data Source=.;Initial Catalog=Department;Integrated Security=True" providerName="System.Data.SqlClient" name="con"/>
</connectionStrings>
详细位置在这里
4.在Model文件夹中创建一个addcontext名字的类型
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Data.Entity;
using System.Data.Entity.ModelConfiguration.Conventions;
namespace WebApplication4.Models
{
public class Addcontext:DbContext
{
/// <summary>
/// 连接数据库
/// </summary>
public Addcontext() : base("con")
{
Database.SetInitializer<Addcontext>(null);
}
/// <summary>
/// 表和表之间的关系
/// </summary>
/// <param name="modelBuilder"></param>
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Conventions.Remove<OneToManyCascadeDeleteConvention>();
modelBuilder.Conventions.Remove<ManyToManyCascadeDeleteConvention >();
}
//注册类型
public DbSet<Student> students{get;set;};
public Dbset<grade> grades{get;set;};
}
}
5.接下来打开你的NuGet控制台
6.输入指令
(1)Enable-Migrations
成功后
(2)Add-Migration
参数随便写
成功后
在这里写你的默认数据
(3)Update-Database
成功
7.方法接口
在Model文件夹中创建一个Interface的接口,里面是方法
8.写详细的方法
创建一个Setstudent名字的类(注意创建后的第一件事就是实现addcontext的注入)
protected readonly addcontext context = new addcontext();
/// <summary>
/// 添加
/// </summary>
/// <param name="student"></param>
/// <returns></returns>
public student Addstudent(student student)
{
context.Students.Add(student);
context.SaveChanges();
return student;
}
/// <summary>
/// 删除
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public student Delstudent(int id)
{
student students = context.Students.Find(id);
if (students != null)
{
context.Students.Remove(students);
context.SaveChanges();
}
return students;
}
/// <summary>
/// 读取对应的
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public student Getstudent(int id)
{
return context.Students.Find(id);
}
/// <summary>
/// 读取全部
/// </summary>
/// <returns></returns>
public IEnumerable<student> GetStudents()
{
return context.Students;
}
/// <summary>
/// 修改
/// </summary>
/// <param name="student"></param>
/// <returns></returns>
public student upstudent(student upstudent)
{
context.Students.Add(upstudent);
context.Entry(upstudent).State = System.Data.Entity.EntityState.Modified;
context.SaveChanges();
return upstudent;
}
9.控制器里面使用
注入接口