FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 2510|回复: 5
打印 上一主题 下一主题

Grid如何使用Grid1.CommitChanges()更新数据库

[复制链接]
跳转到指定楼层
楼主
发表于 2013-6-9 17:32:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Grid 使用DataTable作为数据源;
  Grid1.DataSource = table;
   Grid1.DataBind();

想问下如何使用  CommitChanges()更新数据库呢?
如何不能更新,是不是需要按普通方法写SQL语句更新呢?
沙发
发表于 2013-6-9 17:48:43 | 只看该作者
CommitChanges() 只是用来更新前段UI的,更新数据库需要自己写代码:http://fineui.com/demo/#/demo/grid/grid_editor_cell.aspx
板凳
 楼主| 发表于 2013-6-9 17:49:37 | 只看该作者
另外在 GRID编辑中,使用自动补全,无法使用!
地板
 楼主| 发表于 2013-6-9 18:35:10 | 只看该作者
明白了! 还有个问题。GRID编辑中 如何后台绑定 下拉框呢?
新版本是否解决了 GRID编辑 复选框?还有 排序呢?
5#
发表于 2013-6-10 09:02:47 | 只看该作者
CommitChanges() 只是用来更新前段UI的,更新数据库需要自己写代码:http://fineui.com/demo/#/demo/grid/grid_editor_cell.aspx

更新数据库需要自己写代码:
-----各位大神可否做示例,让我们学习一下?
6#
 楼主| 发表于 2013-6-10 18:05:19 | 只看该作者
本帖最后由 舞柯庶 于 2013-6-10 18:06 编辑

抛砖引玉:
                  Dictionary<int, Dictionary<int, string>> modifiedDict = xGrid.GetModifiedDict();
                //获取修改后的数据集合xGrid.GetModifiedData().ToString()               

                string xSqls = "";  
                string xIdS="";
                for (int i = 0, count = xGrid.Rows.Count; i < count; i++)
                {
                    if (modifiedDict.ContainsKey(i))//当前行是否修改
                    {
                        if (xSqls == "")
                        {
                            xSqls = "Update xtable Set CL_UpdateName='"+Session["user_name"].ToString()+"',CL_UpdateDate=GetDate()";
                             xIdS=xGrid.DataKeys[0].ToString();
                        }
                        else
                        {
                            xSqls = xSqls + "$Update xtable Set CL_UpdateName='" + Session["user_name"].ToString() + "',CL_UpdateDate=GetDate()";
                            xIdS=xIdS+","+xGrid.DataKeys[0].ToString();
                        }
                       

                        Dictionary<int, string> rowDict = modifiedDict;               
                        
                                                                  

                        //数量
                        if (rowDict.ContainsKey(4))//是否修改
                        {
                            xSqls = xSqls + ",CL_Num=" + Convert.ToDouble(rowDict[4]);
                        }
                          // 单重
                        if (rowDict.ContainsKey(9))
                        {
                            xSqls = xSqls + ",CL_Weight=" + rowDict[9].ToString();
                        }
                        // 备注
                        if (rowDict.ContainsKey(10))
                        {
                           xSqls = xSqls + ",CL_Meno=" + rowDict[10].ToString();                           
                        }

                        xSqls = xSqls + " Where Id=" + xGrid.DataKeys[0].ToString();
                    }
                }//for

                    

                DB db = new DB();

               
                string[] sql_arr = xSqls.Split('$');
                db.Exec_Trans(sql_arr);
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-11-27 15:03 , Processed in 0.043512 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表