Erstellen Sie ein NuGet-Paket, das Aktualisierungsbenachrichtigungen anzeigt
Ich erstelle ein NuGet-Paket und möchte, dass das Paket eine Benachrichtigung anzeigt, wenn ein Update für das Paket im Repository vorhanden ist (dies ist ein privates Repository, nicht das offizielle NuGet-Repository).
Bitte beachten Sie, dass ich nicht möchte, dass sich das Paket automatisch aktualisiert (falls die neue Version Probleme mit sich bringt), sondern nur den Benutzer benachrichtigt.
Um dies zu tun, habe ich dies in meineminit.ps1
Datei im Paket:
param($installPath, $toolsPath, $package, $project)
$PackageName = "MyPackage"
$update = Get-Package -Updates | Where-Object { $_.Id -eq $PackageName }
if ($update -ne $null -and $update.Version -gt $package.Version) {
[System.Windows.Forms.MessageBox]::Show("New version $($update.Version) available for $($PackageName)") | Out-Null
}
Die Prüfung auf$update.Version -gt $package.Version
wird benötigt, um zu vermeiden, dass die Benachrichtigung angezeigt wird, wenn das neuere Paket installiert wird.
Ich würde gerne wissen, ob
Diese Lösung ist akzeptabel, oder wenn es eine bessere und "standardmäßige" Möglichkeit gibt, dies zu tun (anstatt meine eigene Lösung zu brauen).Es gibt eine bessere Möglichkeit, eine Benachrichtigung anzuzeigen, als dieMessageBox
ist eher ärgerlich: es verbirgt sich hinter dem Dialogfeld "Lösung vorbereiten", wenn ich das Projekt öffne, und der Vorgang wird erst abgeschlossen, wenn ich auf OK klicke.