ASP.NET中分布式事务的使用
思路:
1、在项目中必须引用 System.Transactions 程序集
2、在需要进行事务管控的代码方法:System.Transactions.TransactionScope scop = new System.Transactions.TransactionScope()
3、必须启动服务 Distributed Transaction Coordinator才能进行分布式事务的正常运行
下面是我写的一个例子主要代码:
1 //3.根据id将数据库和文件夹的图片一起删掉
2
3 //3.0根据id得到实体对象
4 ProductEntity entity = Product_BLLSub.Get_ProductEntity(int.Parse(id));
5 //3.1创建一个事务
6 using (System.Transactions.TransactionScope scop = new System.Transactions.TransactionScope())
7 {
8 //3.2删除数据库图片的数据
9 Product_BLLSub.Create_ProductDelete(int.Parse(id));
10 12 //3.3得到图片的路径
13 string thumphyPath = context.Server.MapPath("/upload/thum/") + entity.img_url;
14 string imgPhyPath = context.Server.MapPath("/upload/img/") + entity.img_url;
15 //3.4删除缩略图
16 if (System.IO.File.Exists(thumphyPath))
17 {
18 System.IO.File.Delete(thumphyPath);
19 }
20 //3.5删除原图
21 if (System.IO.File.Exists(imgPhyPath))
22 {
23 System.IO.File.Delete(imgPhyPath);
24 }
25 //3.6提交事务
26 scop.Complete();
27 }
28 35 //删除成功
36 Response.Write("删除成功");
说明:我操作数据库的方法是将数据库数据取出来转换成实体对象,然后通过操作实体对象来操作数据库。
下一篇: 女秘书的初夜,话可不能乱说啊
推荐阅读
-
PHP5中使用PDO连接数据库的方法
-
解析:php调用MsSQL存储过程使用内置RETVAL获取过程中的return值
-
Word2000和Word2002中的宏在Office Word 2003中的使用
-
Asp.net合并JS,Css文件,只要在路径中添加要压缩的文件名
-
使用=号引用的方法来将Excel中多列内容合并成一列
-
MyBatis中XML和注解的对比及使用
-
Word2003“汉字重选”功能在文档中的使用
-
jquery中的$(document).ready()使用小结
-
Python_WIN10系统中递归所有文件夹所有文件_移动所有文件到主目录(使用到的库:os + glob + shutil)
-
Linux系统中的mount挂载磁盘命令使用教程