以下代码有什么问题?怎么才能让事务回滚?
我不用TransactionScope事务
请明确的告诉我,错在哪谢谢大家
这个程序集目前已经的强名称了,就是无法回滚,似乎哪写错了using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlClient;
using System.EnterpriseServices; namespace Project
{
public class Program
{
static void Main(string[] args)
{
Test test = new Test();
test.add1();
test.add2(); }
} //如果事务存在则共享事务
[Transaction(TransactionOption.Supported)]
public class Test : ServicedComponent //所有COM+服务的基类
{
//自动事务处理属性
[AutoComplete]
public void add1()
{
SqlConnection con = new SqlConnection("server=.;database=Test;uid=sa;pwd=sa");
con.Open();
SqlCommand cmd = new SqlCommand("insert into TestTable values(1,'张三')", con);
cmd.ExecuteNonQuery(); }
//自动事务处理属性
[AutoComplete]
public void add2()
{
SqlConnection con = new SqlConnection("server=.;database=Test;uid=sa;pwd=sa");
con.Open();
SqlCommand cmd = new SqlCommand("insert into TestTables values(2,'张四')", con);
cmd.ExecuteNonQuery(); }
}
}
我不用TransactionScope事务
请明确的告诉我,错在哪谢谢大家
这个程序集目前已经的强名称了,就是无法回滚,似乎哪写错了using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlClient;
using System.EnterpriseServices; namespace Project
{
public class Program
{
static void Main(string[] args)
{
Test test = new Test();
test.add1();
test.add2(); }
} //如果事务存在则共享事务
[Transaction(TransactionOption.Supported)]
public class Test : ServicedComponent //所有COM+服务的基类
{
//自动事务处理属性
[AutoComplete]
public void add1()
{
SqlConnection con = new SqlConnection("server=.;database=Test;uid=sa;pwd=sa");
con.Open();
SqlCommand cmd = new SqlCommand("insert into TestTable values(1,'张三')", con);
cmd.ExecuteNonQuery(); }
//自动事务处理属性
[AutoComplete]
public void add2()
{
SqlConnection con = new SqlConnection("server=.;database=Test;uid=sa;pwd=sa");
con.Open();
SqlCommand cmd = new SqlCommand("insert into TestTables values(2,'张四')", con);
cmd.ExecuteNonQuery(); }
}
}
记得好像如果你这样写的话,要在事务的环境下才会开始事务的,就是如果你放在transactionscope里就会有事务。 然后你有没有把你的com+的组件dll regsvc到com+组件服务里去?
注册进com+里面了代码方便的问题,能帮我写出来吗?