动软代码生成器 处理事件

shunping_tian 2013-09-07 04:05:03
用动软的代码生成器生成的代码:

其中增加记录的代码:

sql语句生成后 用 object obj = DbHelperSQL.GetSingle(strSql.ToString(),parameters);
if (obj == null) 直接来执行.

我想请教大家:

如果是一个 这个添加记录的语句是一个事件的一部分,BEGIN TRAN COMMIT TRAN

怎么样处理事件的另外的代码呢?

比如我这个事件中包含2个业务:

1.就是在Customer 表中添加记录

添加记录的统计,还要更新一个表 如 BAC 表的其中一个字段

BEGIN TRAN

insert int customer (.....

update BAC set FieldA...

COMMIT TRAN

不知说明白没,请大家帮忙看看.


/// <summary>
/// 增加一条数据
/// </summary>
public int Add(TSMData.Model.Customer model)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("insert into tr_BSCustomer(");
strSql.Append("UserID,IDDate,CustomerName,Address,SalesMan,Region,PaymentDay,CustomerMemo,CustomerNumber)");
strSql.Append(" values (");
strSql.Append("@UserID,@IDDate,@CustomerName,@Address,@SalesMan,@Region,@PaymentDay,@CustomerMemo,@CustomerNumber)");
strSql.Append(";select @@IDENTITY");
SqlParameter[] parameters = {
new SqlParameter("@UserID", SqlDbType.NVarChar,10),
new SqlParameter("@IDDate", SqlDbType.DateTime),
new SqlParameter("@CustomerName", SqlDbType.NVarChar,30),
new SqlParameter("@Address", SqlDbType.NVarChar,50),
new SqlParameter("@SalesMan", SqlDbType.NVarChar,10),
new SqlParameter("@Region", SqlDbType.NVarChar,10),
new SqlParameter("@PaymentDay", SqlDbType.Int,4),
new SqlParameter("@CustomerMemo", SqlDbType.NVarChar,50),
new SqlParameter("@CustomerNumber", SqlDbType.VarChar,10)};
parameters[0].Value = model.UserID;
parameters[1].Value = model.IDDate;
parameters[2].Value = model.CustomerName;
parameters[3].Value = model.Address;
parameters[4].Value = model.SalesMan;
parameters[5].Value = model.Region;
parameters[6].Value = model.PaymentDay;
parameters[7].Value = model.CustomerMemo;
parameters[8].Value = model.CustomerNumber;
object obj = DbHelperSQL.GetSingle(strSql.ToString(),parameters);
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}[/color]
...全文
66 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
shunpingtian 2013-09-07
  • 打赏
  • 举报
回复
这个达不到, 需要用手工处理才行
唐诗三百首 2013-09-07
  • 打赏
  • 举报
回复
建议将整个事务处理过程写为存储过程. 前端程序直接调用存储过程,传入参数即可.

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧