Создайте пакет NuGet, который показывает уведомления об обновлениях

Я создаю пакет NuGet, и мне бы хотелось, чтобы пакет отображал уведомление всякий раз, когда обновление для пакета присутствует в репозитории (который является частным, а не официальным репозиторием NuGet).

Обратите внимание, что я не хочу, чтобы пакет обновлялся автоматически (в случае, если новая версия может вызвать некоторые проблемы), а просто уведомляю пользователя.

Для этого я добавил это в свойinit.ps1 файл в пакете:

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
}

Проверка на$update.Version -gt $package.Version необходимо, чтобы не показывать уведомление при установке более нового пакета.

Я хотел бы знать, если

This solution is acceptable, or if there is a better and "standard" way to do this (rather than brewing my own solution). There is a better way to show a notification, as the MessageBox is rather annoying: it hides behind the "preparing solution" dialog when I open the project, and the operation does not complete until I click ok.

Ответы на вопрос(3)

Ваш ответ на вопрос