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. 树莓派使用 PPA 安装 Java 8

    前言 在树莓派上安装 Java 8,与这篇的操作类似,不过树莓派不支持用 add-apt-repository 自动添加 webupd8team 的源,所以要手动添加. 步骤 在 /etc/apt/s ...

  2. 利用canvas添加图片水印--直接上代码

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  3. CodeForces - 476B -Dreamoon and WiFi(DFS+概率思维)

    Dreamoon is standing at the position 0 on a number line. Drazil is sending a list of commands throug ...

  4. hdu6299 Balanced Sequence 贪心

    题目传送门 题目大意:给出n个字符串,定义了平衡字符串,问这些字符串组合之后,最长的平衡字符子序列的长度. 思路: 首先肯定要把所有字符串先处理成全是不合法的,记录右括号的数量为a,左括号的数量为b, ...

  5. POJ 2299 Ultra-QuickSort (树状数组 && 离散化&&逆序)

    题意 : 给出一个数n(n<500,000), 再给出n个数的序列 a1.a2.....an每一个ai的范围是 0~999,999,999  要求出当通过相邻两项交换的方法进行升序排序时需要交换 ...

  6. my19_mysql 多线程备份恢复工具mydumper

    mydumper适合库中有大表且CPU个数较多的场景,多用于恢复从库或单个实例 推荐用法**************************** mydumper -u automng -p root ...

  7. Linux配置SSH免密码登录

    CentOS配置SSH免密码登录为例说明:SSH远程登录的安全外壳协议有两种身份认证机制: - 用户名+密码 -密钥登录 环境准备 host1:192.168.0.10host2:192.168.0. ...

  8. JavaSE---多线程---线程的生命周期

    1.线程的生命周期:新建.就绪.运行.阻塞.死亡 2.运行状态线程进入阻塞: 1.1 调用sleep方法主动放弃: 1.2 调用线程的suspend方法将线程挂起,不推荐使用: 1.3 线程调用一个阻 ...

  9. Mybatis学习笔记17 - sql标签和include标签

    示例代码: 接口定义: package com.mybatis.dao; import com.mybatis.bean.Employee; import org.apache.ibatis.anno ...

  10. 彻底理解和解决移动WEB开发中CLICK点透问题

    在移动WEB开发中,有时候可能会出现点透问题,本文将围绕这个TAP点透问题,详细的讲述到底什么是点透,为什么会出现点透,如何避免出现点透,如果不可避免的出现了,如何解决解决移动WEB开发中CLICK点 ...