时间:2016-02-15 21:42 来源: 我爱IT技术网 作者:佚名
欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【asp.net 执行事务代码】,下面是详细的讲解!
asp.net 执行事务代码
//数据库执行区,SqlConnection _sqlConn=null;
SqlTransaction _SqlTrans=null;
try
{
//数据库操作类
_sqlConn=System.mySQLConnection.SqlConnections.GetSQLConnection();//见下面的类
_sqlConn.Open();
// sql事务对象
_SqlTrans=_sqlConn.BeginTransaction();
//基本信息执行SQL语句情况
bool StudentInfo_YN=false;
if (hid_StudentIDValue=="")
{
StudentInfo_YN=(System.mySQLConnection.SqlConnections.UpdateOrDelete(_sqlConn, _SqlTrans, sql语句) > 0) ? true : false;
}
else
{
StudentInfo_YN=true;
}
bool baoMing_YN=false;
//报名基本信息执行SQL语句情况
if (StudentInfo_YN)
{
//获取报名的o_flowid号,由数据库产生
baoMing_YN=(System.mySQLConnection.SqlConnections.UpdateOrDelete(_sqlConn, _SqlTrans, sql语句) > 0) ? true : false;
}
else
{
baoMing_YN=false;
}
bool baomingdetail_YN=false;
//报名的课程详细信息执行SQL语句情况
if (baoMing_YN)
{
baomingdetail_YN=(System.mySQLConnection.SqlConnections.UpdateOrDelete(_sqlConn, _SqlTrans, sql语句) > 0) ? true : false;
}
else
{
baomingdetail_YN=false;
}
//收费表SQL语句情况
//if (baoMing_YN)
//{
// baomingdetail_YN=(System.mySQLConnection.SqlConnections.UpdateOrDelete(_sqlConn, _SqlTrans, sql语句) > 0) ? true : false;
//}
//else
//{
// baomingdetail_YN=false;
//}
//总的判断全部释放成功。
if (baomingdetail_YN)
{
//提交事务,清除Session验证码
_SqlTrans.Commit();
MessageBox.alert(Page, "报名成功。", "window.location.href='addBaoMing.aspx'");
}
else
{
_SqlTrans.Rollback();
MessageBox.alert(Page, "报名失败。");
return;
}
}
catch (SqlException sqlE)
{
MessageBox.alert(Page, "提交异常 " + sqlE.Message.Replace("\"", "'"));
}
finally
{
if (_sqlConn !=null)
_sqlConn.Close();
if (_SqlTrans !=null)
_SqlTrans.Dispose();
}
写在SqlConnections的类中(一般放在app_code,也可放在三层架构的类中)
//当前连接的是第几个。
static int count=0;
//最大连接量
static int maxCount=30;
static SqlConnection[] sqlConns=new SqlConnection[maxCount];
//自己创建自己
static SqlConnections myConn=new SqlConnections();
//初始化
private SqlConnections()
{
for (int i=0; i < maxCount; i++)
{
sqlConns[i]=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ADOStr"].ToString());
}
}
// 获取数据库连接
public static int UpdateOrDelete(String sqlTxt)
{
SqlConnection sqlConnTemp=SqlConnections.GetSQLConnection();
try
{
SqlCommand sqlCommT=new SqlCommand(sqlTxt, sqlConnTemp);
sqlConnTemp.Open();
return sqlCommT.ExecuteNonQuery();
}
catch (SqlException sqlE)
{
return 0;
}
finally
{
sqlConnTemp.Close();
}
}
public static SqlConnection GetSQLConnection()
{
try
{
try
{
sqlConns[count].Close();
}
catch (Exception eeX)
{
}
return sqlConns[count];
}
finally
{
//当前个数自加。。
if (count==(maxCount - 1))
{
count=0;
}
else
{
count++;
}
}
}
关于asp.net 执行事务代码的用户互动如下:
相关问题:
答: >>详细
相关问题:
答: >>详细
相关问题:
答: >>详细
- 【创建】ASP.NET Web API教程 创建域模型的方法详
- 【服务器】asp.net页面状态管理cookie和服务器状
- 如何取消.net后台线程的执行
- 【WeakReference】WeakReference(弱引用)让GC需要
- 【ajax格式】asp.net中在用ajax格式传递数据到asp
- 【字符文本】asp.net 数据绑定 使用eval 时候报
- 【Repeater控件】.NET实现Repeater控件+AspNetPag
- 【客户端】获取客户端IP地址c#/vb.net各自实现代
- 【asp】asp.net上传execl文件后 在页面上加载显示
- 【Excel】页面导出为Excel的时间格式的问题-时间
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
