Имаме внедрено приложение ClickOnce. Бихме искали да се уверим, че инсталациите актуализират само 1 версия за всеки път. (Други решения с най-добри практики също са добре дошли).
Да кажем например, че потребител има инсталирана версия 1.16, междувременно има 2 нови версии, така че версията на сървъра вече е 1.18. Бихме искали да гарантираме, че следващия път, когато приложението се актуализира, то първо се актуализира от 1.16 на 1.17. След това следващия път, когато се актуализира, се актуализира от 1.17 на 1.18 и т.н. Т.е. не се актуализира директно от 1.16 на 1.18.
Защо, може да попитате. Ами това е свързано с факта, че нашето приложение има локална (SQL EXPRESS) база данни. Имаме персонализиран клас за актуализиране, който се извиква при стартиране на приложението. Той открива дали е настъпила актуализация на CO, ако е така, актуализира локалната база данни с всички промени в схемата, които може да са направени. т.е. актуализацията на CO първо доставя файловете, необходими за извършване на промените на scehma, а след това персонализираният клас за актуализация извършва действителната модификация на db. Това е проблем при прескачане на повече от 1 версия, тъй като в този пример скриптът за промени в db от v.16 на v.17 никога няма да бъде приложен.
Първият ни подход беше към папки за актуализиране на CO с последователна верига. Това е v.16 актуализации от 1.17, 1.17 актуализации от 1.18, но това не изглежда да реши проблема.
Някакви идеи?