ASP.NET에서 분산된 트랜잭션 사용

최근에 프로젝트를 할 때 분포식 사무를 만났는데 모든 것을 정리하고 여러분과 경험을 공유하고 교류합니다.먼저 왜 분포식 사무를 설명해야 합니까?먼저 제가 프로젝트에서 분포식 사무를 만나게 된 곳을 말씀드리겠습니다. 저는 사이트 백엔드 개발을 할 때 보통 사진표가 있는 디자인과 관련될 때 데이터베이스에 저장된 것은 사진의 경로이고 사진은 사이트의 폴더 아래에 저장된 것입니다. 그래서 저희가 제품표를 조작할 때 데이터베이스 제품의 사진 경로를 삭제하려고 합니다.동시에 사이트 목록에 존재하는 그림도 삭제해야 한다. 이 기능을 실현하기 위해 나는 분포식 사무를 사용했다.
 
아이디어:
1. 프로젝트에서 System을 참조해야 합니다.Transactions 프로그램 세트
2. 사무 관리를 해야 하는 코드 방법: 시스템.Transactions.TransactionScope scop = new System.Transactions.TransactionScope()
3. 서비스 Distributed Transaction Coordinator를 시작해야 분산 트랜잭션이 정상적으로 작동합니다.
다음은 내가 쓴 예의 주요 코드이다.
 
//  id               
            //  id      
            ProductEntity entity = Product_BLLSub.Get_ProductEntity(int.Parse(id));
           //      
            using (System.Transactions.TransactionScope scop = new System.Transactions.TransactionScope())
            { 
                //          
                 Product_BLLSub.Create_ProductDelete(int.Parse(id));
                //       
                    string thumphyPath = context.Server.MapPath("/upload/thum/") + entity.img_url;
                    string imgPhyPath = context.Server.MapPath("/upload/img/") + entity.img_url;
                    //     
                    if (System.IO.File.Exists(thumphyPath))
                    {
                        System.IO.File.Delete(thumphyPath);
                    }
                    //    
                    if (System.IO.File.Exists(imgPhyPath))
                    {
                        System.IO.File.Delete(imgPhyPath);
                    }
                    //    
                    scop.Complete();
                }
              //    
         Response.Write("    ");

 
설명: 내가 데이터베이스를 조작하는 방법은 데이터베이스 데이터를 추출하여 실체 대상으로 전환한 다음에 실체 대상을 조작하여 데이터베이스를 조작하는 것이다.

좋은 웹페이지 즐겨찾기