다음을 통해 공유


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 보안

  • 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.

참고 항목

참조

ILinkedUndoContext 인터페이스

Microsoft.VisualStudio.Modeling.ExtensionEnablement 네임스페이스