C# несколько версий обновлений

Я работаю над приложением Updater, содержащим два приложения с именами Updater и MainApp. Приложение Updater использует веб-сервис для проверки обновлений и обновления MainApp. Я могу добиться обновления, когда нажата кнопка обновления, для однократного следующего обновления.

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

Например, если текущая версия 1.0.0.0, а доступные версии 1.0.2.0, 2.0.0.0, 3.0.0.5. Затем приложение должно обновить себя до 3.0.0.5, не пропуская обновления 1.0.2.0 и 2.0.0.0.

Пожалуйста, поделитесь своими идеями,

Спасибо

Sanket

2 ответа

Вы можете проверить последнюю версию по нажатию кнопки, а затем отсортировать доступные обновления, которые больше, чем ваша текущая версия и меньше или равна последней версии, и действительно обновлять несколько раз.

Ну, насколько я понял, у вас есть какой-то метод

public void checkForUpdates(object sender, EventArgs e){
    //Check if updates are available and call Update(string version);
}

этот метод проверяет наличие обновлений и, если таковые имеются, будет обновлять.
Я предлагаю вам вызвать другую функцию для обновления только до следующей версии и перепроверить:

public void update(string version){
    //Update to next version (and only to next version)
    //and then call check again, so you will update to the next and so on, 
    //till you are on newest version
    checkForUpdates(null, null);
}

вам все равно придется обновлять "каждую версию за другой", так что это самый простой способ сохранить актуальность и простоту программирования, а также удобочитаемости

Другие вопросы по тегам