tiancaizhou 2016-05-31 07:51 采纳率: 0%
浏览 1090

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

项目场景:做一个主从表新增编辑的业务。从表的数据我是直接通过前台的js获取新增和编辑的数据放到隐藏于,在点击保存按钮的时候,把前台隐藏域中的所有新增的从表数据和编辑的从表数据通过json反射层对应的从表list。保存代码如下:

#region 从表数据
List listAS_ReqOrder_Dtl = JsonHelp.JsonToClass>("[" + hidReqOrderInfoJson.Value + "]");
if (listAS_ReqOrder_Dtl != null && listAS_ReqOrder_Dtl.Count > 0)
{
model.List_AS_ReqOrder_Dtl = new HashedSet();//清空
for (int i = 0; i < listAS_ReqOrder_Dtl.Count; i++)
{
AS_ReqOrder_Dtl modelDtl = 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);
}
}
#endregion

    if (reqID.IsNullOrEmpty())
    {
        try
        {
            model.Status = iState;
            model.OrgID = OrgID.Value.ToInt32();
            var result = ServerFactory.AS_ReqOrderServer.SaveModel(model).ToInt32();
            if (result > 0)
            {
                AlertJsMsg("添加成功", "ReqOrdeList.aspx");
            }
            else
            {
                AlertJsMsg("添加失败", "");
            }
        }
        catch (Exception ex)
        {
            AlertJsMsg("添加失败:" + ex.Message, "");
        }
    }
    else
    {
        try
        {
            var result = ServerFactory.AS_ReqOrderServer.UpdateModel(model);

            if (result)
            {
                AlertJsMsg("修改成功", "ReqOrdeList.aspx");
            }
            else
            {
                AlertJsMsg("修改失败", "");
            }
        }
        catch (Exception ex)
        {
            AlertJsMsg("修改失败:" + ex.Message, "");
        }
    }

其中model是主表的实体,AS_ReqOrder_Dtl是从表的实体

现在新增没问题,编辑就是死活编辑不了。

  • 写回答

1条回答 默认 最新

  • 普通网友 2016-10-07 16:39
    关注

    gion 从表数据
    List listAS_ReqOrder_Dtl = JsonHelp.JsonToClass>("[" + hidReqOrderInfoJson.Value + "]");
    if (listAS_ReqOrder_Dtl != null && listAS_ReqOrder_Dtl.Count > 0)
    {
    model.List_AS_ReqOrder_Dtl = new HashedSet();//清空
    for (int i = 0; i < listAS_ReqOrder_Dtl.Count; i++)
    {
    AS_ReqOrder_Dtl modelDtl = 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);
    }
    }
    #endregion
    if (reqID.IsNullOrEmpty())

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog