Application.UpdatePackage 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
업데이트된 버전을 찾았을 때 패키지를 업데이트할 수 있는지 여부를 나타내는 불리언을 받거나 설정합니다.
public:
property bool UpdatePackage { bool get(); void set(bool value); };
public bool UpdatePackage { get; set; }
member this.UpdatePackage : bool with get, set
Public Property UpdatePackage As Boolean
속성 값
업데이트된 버전을 찾을 때 패키지가 업데이트될 수 있다면 참입니다; 그렇지 않으면 거짓입니다. 기본값은 false입니다.
예제
다음 코드 예시는 업데이트를 활성화하고 비활성화하는 방법을 보여줍니다. 값을 설정 UpdatePackagetrue하고, 속성을 로 재설정 false한 뒤 값을 다시 출력합니다.
class ApplicationTests
{
static void Main(string[] args)
{
Application app = new Application();
Boolean updatePkg = true;
app.UpdatePackage = updatePkg;
Console.WriteLine(app.UpdatePackage);
updatePkg = false;
app.UpdatePackage = updatePkg;
Console.WriteLine(app.UpdatePackage);
}
}
Class ApplicationTests
Shared Sub Main(ByVal args() As String)
Dim app As Application = New Application()
Dim updatePkg As Boolean = True
app.UpdatePackage = updatePkg
Console.WriteLine(app.UpdatePackage)
updatePkg = False
app.UpdatePackage = updatePkg
Console.WriteLine(app.UpdatePackage)
End Sub
End Class
샘플 출력:
True
False
설명
작업, 열거기, Foreach 로그 제공자, 연결 관리자와 같은 확장 가능한 객체가 업데이트되면, 이전 패키지는 로드 시 업데이트할 수 있습니다. 이를 위해서는 로드 전에 애플리케이션 객체에서 다음 두 가지 속성이 반드시 로 true 설정되어야 합니다: UpdatePackage, 와 UpdateObjects.
각 확장 가능한 객체는 자신의 CanUpdate 속성도 구현해야 합니다.
런타임은 이전 패키지를 불러오려 시도하고, 오래된 객체를 찾으면 업데이트를 시도합니다. 런타임은 먼저 포함된 모든 확장 가능한 객체를 열거하며, Pipeline는 별도로 국소적으로 처리됩니다. 각 객체에 대해 런타임은 새 객체를 호출 CanUpdate 하여 이전 객체의 ID를 전달합니다. 새 객체가 이전 객체를 업데이트할 수 있다면, 기존 객체는 새 Update 객체의 메서드를 사용해 전달되고, 그 XML이 변경됩니다. 기본적으로 모든 확장 가능한 객체는 반환false을 구현 CanUpdate 합니다; 따라서 전달된 XML은 업데이트되지 않습니다.