Application.UpdatePackage Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit une valeur booléenne qui indique si les packages peuvent être mis à jour lorsqu’une version mise à jour est trouvée.
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
Valeur de propriété
true si des packages peuvent être mis à jour lorsqu’une version mise à jour est trouvée ; sinon, false. La valeur par défaut est false.
Exemples
L’exemple de code suivant montre comment activer et désactiver les mises à jour. Il définit la UpdatePackagetrue
valeur , imprime la valeur, réinitialise la valeur de la propriété false
et imprime à nouveau la valeur.
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
Exemple de sortie :
True
False
Remarques
Si des objets extensibles, tels que des tâches, des énumérateurs, Foreach
des fournisseurs de journaux et des gestionnaires de connexions sont mis à jour, les packages plus anciens peuvent être mis à jour au moment du chargement. Pour cela, les deux propriétés suivantes doivent être définies true
dans l’objet d’application avant de charger : UpdatePackageet UpdateObjects.
Chaque objet extensible doit également implémenter sa CanUpdate
propriété.
Le runtime tente de charger l’ancien package et, s’il trouve un objet plus ancien, tente une mise à jour. Le runtime énumère tout d’abord tous les objets extensibles qu’il contient, à l’exclusion du Pipeline
, qui est traité séparément et localement. Pour chaque objet, le runtime appelle CanUpdate
ensuite les nouveaux objets, en passant l’ID de l’ancien objet. Si le nouvel objet peut mettre à jour l’ancien, l’ancien objet est passé à celui-ci à l’aide de sa Update
méthode et son XML est modifié en place. Par défaut, tous les objets extensibles implémentent CanUpdate
pour retourner false
; par conséquent, le xml passé n’est pas mis à jour.