增删查改
单表增删查改
以user表为例
ID | Name | Sex | Age | Adress | Tel | Remark |
---|---|---|---|---|---|---|
1 | 张三 | 男 | 26 | 湖南 | 666666 | 非常6 |
- 查询(index)
//View(userInfos) :在VIEW中有相应的Model类型来接收数据,是强类型的
//ViewBag.userInfos :是动态类型的
var userInfo = db.UserInfos.ToList();//查询
//控制器向视图传值
ViewBag.userInfo=userInfo;
//返回视图和数据
return View(userInfo);
- 增加(Add)
//新增
public ActionResult Add(int?id)
{
//返回视图
return View();
}
[HttpPost]
public ActionResult Add(int?id,UserInfos,userInfo)
{
db.UserInfos.Add(userInfo);//UserInfos表增加一条数据
db.SaveChanges();//保存
return RedirectToAction("Index");//返回主页
}
- 修改(Edit)
//修改
public ActionResult Edit(int? id)
{
////注意,有三种方法,可以根据id查询
//var userInfo = db.UserInfos .Find(id)//方法1
//UserInfos userInfo = db.UserInfos .Find(id)//方法2
//UserInfos userInfo = new UserInfos ();//方法3
//if (id != null)
//{
// userInfo = db.UserInfos .Find(id);
//}
//此处我们采用方法三
UserInfos userInfo = new UserInfos ();//实例化一个userInfo类
//判断id是否为空
if (id != null)
{
//如果不为空,则根据id查询一条数据
userInfo = db.UserInfos.Find(id);
}
ViewBag.userInfo = userInfo;//控制器向视图传值
return View(userInfo);//返回视图和数据
}
[HttpPost]
public ActionResult Edit(int?id,UserInfos userInfo)
{
db.Entry(userInfo).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
- 删除(Delete)
public ActionResult Delete(int?id)
{
//根据ID删除
var userInfo= db.UserInfos.Find(id);
db.UserInfos.Remove(userInfo);
db.SaveChanges();
return RedirectToAction("Index");
}
/// <summary>
/// 批量删除
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public ActionResult DeleteAll(List<int> ids)
{
//循环遍历删除
foreach (var id in ids)
{
UserInfos userInfo= db.UserInfos.Find(id);
db.UserInfos.Remove("userInfo");
}
db.SaveChanges();
return RedirectToAction("Index");
}