ILinkedUndoContext.BeginTransaction 메서드
일련의 변경 내용을 모델에 그룹화합니다. 임의의 변경이 실패할 경우 전체 그룹을 중단하고 모델을 변경하지 않은 채로 둘 수 있습니다. 트랜잭션을 완료하려면 Commit()을 호출합니다. 사용자가 실행 취소를 호출하면 전체 그룹이 롤백됩니다.
네임스페이스: Microsoft.VisualStudio.Modeling.ExtensionEnablement
어셈블리: Microsoft.VisualStudio.Modeling.Sdk.12.0(Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)
구문
‘선언
Function BeginTransaction ( _
description As String _
) As ILinkedUndoTransaction
ILinkedUndoTransaction BeginTransaction(
string description
)
매개 변수
- description
형식: System.String
트랜잭션을 식별하는 문자열입니다.
반환 값
형식: Microsoft.VisualStudio.Modeling.ExtensionEnablement.ILinkedUndoTransaction
새 트랜잭션입니다.변경이 완료, 커밋 또는 중단이면 이 트랜잭션을 삭제합니다.
설명
이 작업의 이니셜라이저는 using 절을 변경 했으면 트랜잭션이 삭제 될 수 있도록.
내 잡히지 않아 예외는 using 블록 모든 UML 모델 변경 안에 롤백이 발생 합니다. Note이 아닌 다른 변수, 외부 데이터베이스, 파일을 변경 하 고 UML 모델의 변경 내용에만 적용 되도록 합니다.
트랜잭션은 중첩할 수 있습니다.
자세한 내용은 방법: 트랜잭션을 사용하여 모델 업데이트 연결을 참조하십시오.
예제
try
{
using (ILinkedUndoTransaction transaction =
LinkedUndoContext.BeginTransaction("Swap names"))
{
Operation1();
Operation2();
// Any exception in the preceding statements
// will undo all of the changes in the model.
transaction.Commit(); // Always remember Commit()!
}
}
catch ()
{
// If control reaches here,
// Operation1 and Operation2 have
// made no change to the model.
}
.NET Framework 보안
- 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.