Application.UpdatePackage プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
更新バージョンが検出されたときにパッケージを更新できるかどうかを示す Boolean を取得します。値の設定も可能です。
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
プロパティ値
更新されたバージョンが見つかったときにパッケージを更新できる場合は true。それ以外の場合は false。 既定値は false です。
例
次のコード例では、更新を有効および無効にします。 UpdatePackage を true
に設定し、値を出力してから、このプロパティの値を 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
列挙子、ログ プロバイダー、および接続マネージャーなどの拡張可能なオブジェクトが更新される場合、古いパッケージは読み込み時に更新できます。 このような処理が行われるようにするには、読み込み前にアプリケーション オブジェクトで UpdatePackage と UpdateObjects という 2 つのプロパティを true
に設定する必要があります。
また、拡張可能な各オブジェクトは CanUpdate
プロパティも実装する必要があります。
ランタイムは、古いパッケージの読み込みを試み、古いオブジェクトを検出した場合は、更新を試みます。 まず、(個別にローカルに扱われる Pipeline
を除外して) このランタイムに含まれているすべての拡張可能なオブジェクトを列挙します。 次に、オブジェクトごとに、新しいオブジェクトで古いオブジェクトの ID を渡しながら CanUpdate
を呼び出します。 新しいオブジェクトが古いオブジェクトを更新できる場合は、そのメソッドを使用して Update
古いオブジェクトが新しいオブジェクトに渡され、その XML が変更されます。 既定では、すべての拡張可能なオブジェクトが CanUpdate
を実装して false
を返します。このため、渡される XML は更新されません。