|
本帖最后由 shouzhi2007 于 2015-1-23 15:07 编辑
本人写一下这两天调试的结果,哎,说实在也有点菜了,还问了好几位大神在帮助,最终还是大神⑥阿太⑥帮助完成了。
我写这个是为了和例子没有数据库的操作。本人之前在论坛上找了几久没有相应的结果,所以把心得写下来,为大家服务一下。(大神略过,指点!)
首先:
参考例子:http://fineui.com/demo/#/demo/grid/grid_editor_cell_databind.aspx
- //保存更新代码,
- protected void Button1_Click(object sender, EventArgs e)
- {
- Dictionary<int, Dictionary<string, object>> modifiedDict = Grid3.GetModifiedDict();
- foreach (int rowIndex in modifiedDict.Keys)
- {
- int rowID = Convert.ToInt32(Grid3.DataKeys[rowIndex][0]);
- //这一行为从数据库根据 rowID读数据
- EquipmentLog item = DB.EquipmentLogs.Where(u => u.ID == rowID).FirstOrDefault();
- //赋予ID主键
- item.ID = rowID;
- //DataRow row = FindRowByID(rowID);
-
- UpdateDataRow(modifiedDict[rowIndex], item);
- //保存
- DB.SaveChanges();
-
- }
- BindGrid();
- Label3.Text = "用户修改的数据:" + Grid3.GetModifiedData().ToString(Newtonsoft.Json.Formatting.None);
- Alert.Show("数据保存成功!(表格数据已重新绑定)");
- }
复制代码- //更新代码
- private static void UpdateDataRow(Dictionary<string, object> rowDict, EquipmentLog rowData)
- {
- if (rowDict.ContainsKey("x1"))
- {
- rowData.x1 = rowDict["x1"].ToString();
- }
- if (rowDict.ContainsKey("x2"))
- {
- rowData.x2 = rowDict["x2"].ToString();
- }
- if (rowDict.ContainsKey("x3"))
- {
- rowData.x3 = rowDict["x3"].ToString();
- }
- if (rowDict.ContainsKey("x4"))
- {
- rowData.x4 = rowDict["x4"].ToString();
- }
-
- }
复制代码
实体库:EquipmentLog
|
|