修改和删除

修改和删除

上次写了一些关于新增的内容,这里就接着写一些修改和删除的内容吧。

  1. 修改:
    修改和新增其实差不多,不同的是,修改必须要调用id。修改内容要在进行修改之前通过id查询要修改信息的表。

    public ActionResult 封装的修改方法名(int 参数名)
    {
    	try
    	 {
      		要修改信息的表 变量名 = (from 自定义表名 in 实例化的模型.要修改信息的表
                               where 自定义表名.id == 参数名
                               select 自定义表名).Single();
      		return Json(变量名, JsonRequestBehavior.AllowGet);
    	}
    	 catch (Exception e)
    	{
      		 Console.WriteLine(e);
      		 return Json("", JsonRequestBehavior.AllowGet);
    	}
    }
    

在封装方法时,要用int类型确定一个参数,这个参数是要传输到页面上的;
方法开始用了try…catch 语句补捉错误,然后用了Linq查询语句,因为id具有唯一性,所以Linq查询语句最后用了Single()方法,Single()方法的作用是返回序列的唯一元素。
修改的三个步骤与新增的三个步骤差不多:
(1) 第一步判断页面传输过来的数据内容是否为空,与新增的第一步一样,代码也是一样的,这里就不列举了,有兴趣可以到新增那里看看。
(2) 第二步同样也是将页面传输过来的数据与已经存在的数据相比较,判断页面传输过来的数据是否与已经存在的数据相重复。但是修改的代码与新增有一些差别,上面我说过了修改信息必须要调用id,修改的查重也是,在进行Linq语句查询的时候必须要调用Id,并且,修改的数据信息也要经过Trim()转换。

	int 变量名 = (from 自定义表名 in 实例化的模型.要修改信息的表
         				 where 自定义表名.id != 传递的参数名.id && 
								(自定义表名.要修改的信息 == 传递的参数名. 要修改的信息.Trim())
         				 select 自定义表名).Count();

(3)第三步执行修改操作,也与新增相差无几。
传递的参数接收了修改的数据,然后传输到数据库。
实例化的模型.Entry(传递的参数名).State = EntityState.Modified;

		if (实例化的模型.SaveChanges() > 0)
		{
			 returnJson.State = true;
 			returnJson.Text = "修改成功";
		}
		else
		{
  			returnJson.State = false;
  			returnJson.Text = "修改失败";
		}
  1. 删除:
    删除是新增、修改、删除中最简单的,只有一个步骤。
    删除在封装方法时,与新增和修改不同,不是确定参数接收表的数据,而是要用int类型确定一个参数,这个参数是要传输到页面上的。

    	public ActionResult 封装的删除方法名(int 参数名)
    

方法里面同样是实例化实体类,然后用try…catch 语句补捉错误,最后return返回值。但中间只需要一个Linq查询语句查询表的id,然后就可以执行删除操作了。
要删除信息的表 变量名 = (from 自定义表名 in 实例化的模型.要删除信息的表
where 自定义表名.id != 传递的参数名.id == 参数名
select 自定义表名).Single();
实例化的模型. 要删除信息的表.Remove(变量名);

	if (myModel.SaveChanges() > 0)
	{
   		returnJson.State = true;
  		 returnJson.Text = "删除成功";
	}	
	else {
			returnJson.State = false;
   			returnJson.Text = "删除失败";
	 }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值