NHibernate主从表的新增和编辑问题

问题描述

项目场景:做一个主从表新增编辑的业务。从表的数据我是直接通过前台的js获取新增和编辑的数据放到隐藏于,在点击保存按钮的时候,把前台隐藏域中的所有新增的从表数据和编辑的从表数据通过json反射层对应的从表list。保存代码如下:#region从表数据List<AS_ReqOrder_Dtl>listAS_ReqOrder_Dtl=JsonHelp.JsonToClass<List<AS_ReqOrder_Dtl>>("["+hidReqOrderInfoJson.Value+"]");if(listAS_ReqOrder_Dtl!=null&&listAS_ReqOrder_Dtl.Count>0){model.List_AS_ReqOrder_Dtl=newHashedSet<AS_ReqOrder_Dtl>();//清空for(inti=0;i<listAS_ReqOrder_Dtl.Count;i++){AS_ReqOrder_DtlmodelDtl=listAS_ReqOrder_Dtl[i];modelDtl.AS_ReqOrder=model;modelDtl.IsDel=false;if(modelDtl.Version==0){modelDtl.CreateBy=WebLoginUserInfo.ID.ToStr();modelDtl.CreateDate=DateTime.Now;modelDtl.Sort=0;}else{modelDtl.ModifyBy=WebLoginUserInfo.RealName;modelDtl.ModifyDate=DateTime.Now;}model.AddAS_ReqOrder_Dtl(modelDtl);}}#endregionif(reqID.IsNullOrEmpty()){try{model.Status=iState;model.OrgID=OrgID.Value.ToInt32();varresult=ServerFactory.AS_ReqOrderServer.SaveModel(model).ToInt32();if(result>0){AlertJsMsg("添加成功","ReqOrdeList.aspx");}else{AlertJsMsg("添加失败","");}}catch(Exceptionex){AlertJsMsg("添加失败:"+ex.Message,"");}}else{try{varresult=ServerFactory.AS_ReqOrderServer.UpdateModel(model);if(result){AlertJsMsg("修改成功","ReqOrdeList.aspx");}else{AlertJsMsg("修改失败","");}}catch(Exceptionex){AlertJsMsg("修改失败:"+ex.Message,"");}}

其中model是主表的实体,AS_ReqOrder_Dtl是从表的实体现在新增没问题,编辑就是死活编辑不了。

解决方案

解决方案二:
varresult=ServerFactory.AS_ReqOrderServer.UpdateModel(model);UpdateModel看看这里边的函数,可能是update语句出的问题,比如你没去掉主键等问题

时间: 2024-10-23 16:04:01

NHibernate主从表的新增和编辑问题的相关文章

Winform界面中主从表编辑界面的快速处理

在Winform开发中,我们往往除了常规的单表信息录入外,有时候设计到多个主从表的数据显示.编辑等界面,单表的信息一般就是控件和对象实体一一对应,然后调用API保存即可,主从表就需要另外特殊处理,本随笔介绍如何快速实现主从表编辑界面的处理,结合GridControl控件的GridView控件对象,实现数据在列表中的实时编辑,非常方便. 1.主从表的界面设计及展示 主从表一般涉及两个以上的表,一个是主表,其他的是从表的,在实际情况下,一般包含两个表较多,我们这里以两个表的主从表关系进行分析处理.

我的NHibernate之路(2)---主从表(一对多)配置篇

通过我上篇文章的配置,单独做一张表的操作已经够了.但是在我们实际开 发的过程中,很多时候数据库中都存在着主从表等关系,这时候就存在主表中的 一条记录可能对应多条从表中的记录.那么这种情况下,我们还用上篇文章的的 简单配置就不够了.下面我通过一个实际的例子说说Nhibernate中主从表的配置 . 先介绍开发环境和软件版本:VS2008 SP1.NHibernate-2.1.2.GA-bin.在下 面的例子中,就两张表,一张Class表,一张Student表.这就是一个典型的主从 表的关系. 这种

代码生成工具Database2Sharp中增加视图的代码生成以及主从表界面生成功能

在代码生成工具的各种功能规划中,我们一向以客户的需求作为驱动,因此也会根据需要增加一些特殊的功能或者处理.在实际的开发中,虽然我们一般以具体的表进行具体业务开发,但是有些客户提出有时候视图开发也是很常见的,为了提高代码生成和界面生成的效率,基于视图开发的过程也应该支持.还有主从表的界面生成操作,在很多实际的业务领域也是很常见的.基于上面的需求,本次代码生成工具Database2Sharp中增加视图的代码生成以及主从表界面生成功能,为客户的高效率开发快马加鞭.保驾护航. 1.基于视图的代码生成和界

ext/js-Ext/js主从表数据在一个界面展示的问题

问题描述 Ext/js主从表数据在一个界面展示的问题 类似于一个订单列表,每行后面有一个查看详情的按钮,现在是点击查看详情,展示了主表数据,怎么样才能在点击查看详情的时候,除了展示当前订单记录行的信息,还要展示这一条订单关联的多条订单明细信息呢?在一个界面,跟在订单信息后面展示? 解决方案 可以用Ext.ux.RowExpander这个插件,具体示例看examplesgridgrid-plugins.html

asp.net 水晶报表-主从表关联问题

asp.net|水晶报表|问题 一.使用视图meeting将多表关联整合在一起 二.通过Sql语句筛选数据 三.建立和主从表的关联 四.注意在CrystalReport1表中插入子报表的时候,一定要将主从表的关联字段设置好,否则出乱子 主体代码如下: /// <summary>  /// Bind CrystalReport  /// </summary>  /// <param name="strS">sql</param>  priv

VC操作SQL Server主从表

工作之余,用VC作了一个小程序,是VC+SQL server模式的,程式内容比较简单,主要设及以下内容: 窗口如何分割: 多视图之间如何通信: 列表视图的操作及事件处理: 树形控件的操作及事件处理,利用递归根据数据库动态生成目录: 实现主从表的显示 以下对程序细节稍作一下说明: 一.窗口如何分割 切分窗口既适用于SDI应用程序,也适宜于MDI应用程序.它通常驻是以类 CSplitterWnd来表示,对 Windows 来说,CSplitterWnd 是一个真正的窗口,它完全占用框架窗口的客户区域

导入的EXCEL怎么存到主从表

问题描述 导入的EXCEL怎么存到主从表 如图来源单号.会员代码.会员名称存主表,商品代码.商品名称存字表.一对多的关系 解决方案 循环判断写入到数据库中, 如果会vba 可以直接excel操作数据库,将数据写入到数据库的表中.

findcontrol-ASPxGridView主从表,通过FindControl找不到从表

问题描述 ASPxGridView主从表,通过FindControl找不到从表 (ASPxGridView)AspxGridView_FS.FindControl("ASPxGridView_mx") 返回为null 解决方案 要到每一个detailrow中找 解决方案二: 你的控件包裹在别的控件内,这样你需要多次调用FindControl才能找到 解决方案三: 请问Findcontrol语句怎么写??

datagridview 主从表添加列?

问题描述 在DataGridView显示主从表的时候,如何给从表添加一个新的列呢? 解决方案 解决方案二:你看看下面的贴子吧!