StringBuilder strSql=new StringBuilder();
strSql.Append("insert into HT_XunJiaMain(");
strSql.Append("b_xunjiazhuti,b_xunjiariqi,b_lianxiren,b_lianxidianhua,b_dizhi)");
strSql.Append(" values (");
strSql.Append("@b_xunjiazhuti,@b_xunjiariqi,@b_lianxiren,@b_lianxidianhua,@b_dizhi)");
strSql.Append(";set @ReturnValue= @@IDENTITY");
SqlParameter[] parameters = {
new SqlParameter("@b_xunjiazhuti", SqlDbType.VarChar,),
new SqlParameter("@b_xunjiariqi", SqlDbType.VarChar,),
new SqlParameter("@b_lianxiren", SqlDbType.VarChar,),
new SqlParameter("@b_lianxidianhua", SqlDbType.VarChar,),
new SqlParameter("@b_dizhi", SqlDbType.VarChar,),
new SqlParameter("@ReturnValue",SqlDbType.Int)};
parameters[].Value = model.b_xunjiazhuti;
parameters[].Value = model.b_xunjiariqi;
parameters[].Value = model.b_lianxiren;
parameters[].Value = model.b_lianxidianhua;
parameters[].Value = model.b_dizhi;
parameters[].Direction = ParameterDirection.Output; //这里输出的主表的ID List<CommandInfo> sqllist = new List<CommandInfo>();
CommandInfo cmd = new CommandInfo(strSql.ToString(), parameters);
sqllist.Add(cmd);
StringBuilder strSql2;
foreach (HT_Model.HT_XunJiaDetails models in model.HT_XunJiaDetailss)
{
strSql2=new StringBuilder();
strSql2.Append("insert into HT_XunJiaDetails(");
strSql2.Append("d_baojialeixing,d_baojiayuan,d_beizhu,Pid,d_laiyuan,d_bianhao,d_zuzhiguige,d_buzhong,d_kezhong,d_baojiariqi,d_jiage)");
strSql2.Append(" values (");
strSql2.Append("@d_baojialeixing,@d_baojiayuan,@d_beizhu,@Pid,@d_laiyuan,@d_bianhao,@d_zuzhiguige,@d_buzhong,@d_kezhong,@d_baojiariqi,@d_jiage)");
SqlParameter[] parameters2 = {
new SqlParameter("@d_baojialeixing", SqlDbType.VarChar,),
new SqlParameter("@d_baojiayuan", SqlDbType.VarChar,),
new SqlParameter("@d_beizhu", SqlDbType.VarChar,),
new SqlParameter("@Pid", SqlDbType.Int,),
new SqlParameter("@d_laiyuan", SqlDbType.VarChar,),
new SqlParameter("@d_bianhao", SqlDbType.VarChar,),
new SqlParameter("@d_zuzhiguige", SqlDbType.VarChar,),
new SqlParameter("@d_buzhong", SqlDbType.VarChar,),
new SqlParameter("@d_kezhong", SqlDbType.VarChar,),
new SqlParameter("@d_baojiariqi", SqlDbType.VarChar,),
new SqlParameter("@d_jiage", SqlDbType.VarChar,)};
parameters2[].Value = models.d_baojialeixing;
parameters2[].Value = models.d_baojiayuan;
parameters2[].Value = models.d_beizhu;
parameters2[].Direction = ParameterDirection.InputOutput;
//这里将主表的ID作为参数传入子表ParentID,这要是这这里的写法
//parameters2[3].Direction = ParameterDirection.InputOutput;
//这样对应到后面的数据库处理就好了,代码自动生成的时候,这里不能自动转换,需要手动修改
parameters2[].Value = models.d_laiyuan;
parameters2[].Value = models.d_bianhao;
parameters2[].Value = models.d_zuzhiguige;
parameters2[].Value = models.d_buzhong;
parameters2[].Value = models.d_kezhong;
parameters2[].Value = models.d_baojiariqi;
parameters2[].Value = models.d_jiage; cmd = new CommandInfo(strSql2.ToString(), parameters2);
sqllist.Add(cmd);
}
DbHelperSQL.ExecuteSqlTranWithIndentity(sqllist);
return (int)parameters[].Value;

动软代码生成器,主子表增加的时候子表的parentID无法插入问题解决方案的更多相关文章

  1. C# 嵌入dll 动软代码生成器基础使用 系统缓存全解析 .NET开发中的事务处理大比拼 C#之数据类型学习 【基于EF Core的Code First模式的DotNetCore快速开发框架】完成对DB First代码生成的支持 基于EF Core的Code First模式的DotNetCore快速开发框架 【懒人有道】在asp.net core中实现程序集注入

    C# 嵌入dll   在很多时候我们在生成C#exe文件时,如果在工程里调用了dll文件时,那么如果不加以处理的话在生成的exe文件运行时需要连同这个dll一起转移,相比于一个单独干净的exe,这种形 ...

  2. 动软代码生成器连接Oracle 11g

      首先要说明的是:如果你连接的是远程的Oracle服务器,你本地机器必须装Oracle客户端,然后 用sqldeveloper 先建立一个连接. 然后你才能用.NET动软代码生成器连接到数据库. 因 ...

  3. asp.net+mvc+easyui+sqlite 简单用户系统学习之旅(三)—— 简单登录页面+sqlite+动软代码生成器的使用

    上一节讲到利用easyui的layout.tree.tab和datagrid创建用户管理的页面,注意利用到easyui的页面一定要按顺序添加jQuery和easyUI的.js和.css样式,灵活查看e ...

  4. 手把手教你使用FineUI+动软代码生成器开发一个b/s结构的取送货管理信息系统(附源码)之开篇

    一 本系列随笔概览及产生的背景 近阶段接到一些b/s类型的软件项目,但是团队成员之前大部分没有这方面的开发经验,于是自己选择了一套目前网上比较容易上手的开发框架(FineUI),计划录制一套视频讲座, ...

  5. 解决“动软代码生成器在SqlServer中会将唯一索引识别为主键"的Bug

    动软代码生成器在SqlServer中,生成的代码会将唯一索引错误地识别为主键, 反编译源代码后,发现其中的SQL条件有误,现修复此Bug. 修复方法:将附件中的”Maticsoft.DbObjects ...

  6. 动软代码生成器三层用于winform

    DBUtility项目中的DbHelperSQL.cs (找自己对应的数据库类型) 修改前20行中的数据库连接字符串获取方式为: //数据库连接字符串(web.config来配置),多数据库可使用Db ...

  7. 动软代码生成器 可用于生成Entity层,可更改模板 /codesmith 也可以

    动软代码生成器官方下载地址:http://www.maticsoft.com/download.aspx 教程:http://jingyan.baidu.com/article/219f4bf7dfd ...

  8. 利用动软代码生成器 自动生成LINQ需要用的数据实体类 (转)

    首先先建立一个模板 名称随意 我起的“生成数据实体.cmt” 代码如下: <#@ template language="c#" HostSpecific="True ...

  9. 动软代码生成器生成model

    model <#@ template language="c#" HostSpecific="True" #> <#@ output exte ...

随机推荐

  1. 使用windows服务修改CPU型号(重启依然有效)

    此项目基于.net framework 4.0 效果如下: 服务运行前: 服务运行后: 思路大概是这样: 通过修改注册表可以修改CPU型号,把服务设置成本地服务,并且开机自动启动,来实现开机自动修改处 ...

  2. jinkens + svn 把代码更新到本地在运行。(方法比较笨,只是想实现自己的想法。把代码更新下来在运行。)

    jinkens + svn 把代码更新到本地在运行.

  3. Photoshop入门教程(四):混合模式

    学习心得:混合模式在Photoshop常容易被忽视,最大原因就是它所处的位置比较隐蔽,在图层面板左上部的角落里.使用混合模式,决定图像中上图层像素如何与图像中的下层像素进行混合,使图层的叠加更加炫酷. ...

  4. eclipse中找不到base64包的解决方法

    eclipse中找不到base64包的解决方法 2017年08月26日 11:05:26 yzp_leo 阅读数:634 标签: javaeclipsebase64更多 个人分类: 日记   ecli ...

  5. (转)Caffe搭建:常见问题解决办法和ubuntu使用中遇到问题(持续更新)

    参考网址:http://www.cnblogs.com/empty16/p/4828476.html 严正声明: 在linux下面使用命令行操作时,一定要懂得命令行的意思,然后再执行,要不然在不知道接 ...

  6. 19. Remove Nth Node From End of List(C++,Python)

    Given a linked list, remove the nth node from the end of list and return its head. For example, Give ...

  7. linux开机启动服务学习chkconfig命令

    选项: --add:增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据: --del:删除所指定的系统服务,不再由chkconfig指令管理,并同时在系 ...

  8. poi 详细demo

    import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IO ...

  9. AndroidStudio项目提交到github最详细步骤

    在使用studio开发的项目过程中有时候我们想将项目发布到github上,以前都是用一种比较麻烦的方式(cmd)进行提交,最近发现studio其实是自带这种功能的,终于可以摆脱命令行了. 因为自己也没 ...

  10. oracle 中 Start with...connect by 的用法(递归查询)

    阿里电面问到了相关的知识,在网上找到这方面的文章. 这几个关键字是查询递归数据的,形成一个树状结构.目前只有oracle支持,其他数据都要结合存储过程实现 语法: select * from some ...