• PDF.NET+EasyUI实现只更新修改的字段


    PDF.NET 在我看来是目前最简单易用而且高效的orm框架之一,感谢作者深蓝医生

    实现的功能是easyui的行内编辑,用到了爱看书不识字的datagrid仿extjs的行内编辑 都是牛人啊。

    2014/2/15使用Json.net和json2修改

    下面是js代码

    onAfterEdit: function (index, data, changes) {
                        $.parser.parse();
                        $('#videoGrid').datagrid('fixRowHeight', index);
                var postdata=$.extend(changes,{Vide_Id: data.Vide_Id}) easyAjax({ url: actionUrl
    + '?action=update', data: {model:JSON.stringify(postdata)}, success:function (){} }); },

    easyAjax是一个封装的ajax访问请求,大家可以换成jquery的就行。
    onAfterEdit里有三个参数,changes为当前修改的字段对象 $.extend(changes,{Vide_Id:data.Vide_Id})把主键添加到data里

    2014/2/15hanlder里代码使用Json.net简化代码

    string model = context.Request["pQuestion"];

    var pQuestion = JsonConvert.DeserializeObject<tbTestPaperQuestionsModel>(model);

    paperQuestionsBll.AddPaperQuestion(pQuestion, needAddChild);

    下面是handler的代码

    private void UpdateVideo(HttpContext context)
            {
           string model=context.Request["model"]
           var model=JsonConvert.DeserializeObject<tbVideoModel>(model);
           bool result=newVideoBll.Update(model);
    //以下为之前旧代码
    //Dictionary
    <string, string> changes = new Dictionary<string, string>(); //foreach (var key in context.Request.Form.Keys) //{ // string keyName = key.ToString(); // string keyValue = context.Request.Form[keyName]; // changes.Add(keyName, keyValue); //} //bool result = newVideoBll.UpdateNewVideo(changes); context.Response.Write(AjaxResult.Success("成功")); }

    看下最后生成的sql语句 UPDATE [tbNewVideoInfo] SET [Vide_Reminds]=@P0 WHERE [Vide_Id]=@P1

    你前台修改了什么字段,后台就生成对应的sql语句 很爽把。

    更多的PDF.NET资料请移步深蓝医生博客http://www.cnblogs.com/bluedoctor/

    菜鸟,真心菜鸟。轻喷


    真正的认识自己,才能做好自己,做好自己,才能做好你将会做的每一件事。
  • 相关阅读:
    使用jquery-qrcode生成二维码
    ASP.NET匿名对象与集合的使用
    ASP.NET Core 之跨平台的实时性能监控
    centos7如何将docker容器配置成开机自启动
    linux 查看系统信息命令
    基于.NET CORE微服务框架 -浅析如何使用surging
    Docker 两键创建 ZeroTier moon 节点
    kubernetes-dashboard获取令牌登陆
    docker环境下使用gitlab,gitlab-runner 为 NetCore 持续集成
    Docker For MYSQL 8.0 特别注意修复数据库新的验证方式
  • 原文地址:https://www.cnblogs.com/encore620/p/3197117.html
Copyright © 2020-2023  润新知