Обновления диалогового окна «Ограничения публикации Sitecore» Все версии для языка

Я сталкиваюсь с проблемой, когда открываю диалоговое окно Изменить ограничения публикации или Настройки публикации и нажимаю OK, чтобы закрыть мастер. Все мои версии элемента изменены с учетом текущей даты и времени. Таким образом, теряется вся история версий для этого языка элементов. Любая помощь будет принята с благодарностью. введите здесь описание изображения


person user2386411    schedule 05.04.2015    source источник
comment
Интересно, что я не могу воспроизвести это в 7.2. Так что, возможно, они решили эту проблему в более поздних версиях. Какую вкладку вы используете в диалоговом окне настроек публикации? Какие галочки вы ставите/снимаете?   -  person Martin Davies    schedule 06.04.2015
comment
Я благодарю вас за ваш любезный интерес к этой попытке помочь. Я использую вкладку «Версии» в 6.6. Откроется диалоговое окно «Параметры публикации», в котором отмечены все версии. и он обновляет все версии с внесением изменений в даты в диалоговом окне или без них.   -  person user2386411    schedule 06.04.2015
comment
После некоторого расследования я в значительной степени получил ответ @nsgocev. Рекомендую использовать это.   -  person Martin Davies    schedule 07.04.2015


Ответы (1)


Это невозможно из коробки (или, насколько мне известно). Вам нужно будет изменить существующую форму публикации набора. Я разместил решение в Bit Bucket. Имейте в виду, что это может не отражает ваш случай, так как я не уверен, какую версию sitecore вы используете. По сути, код переопределяет существующий код OnOK, который проверяет все версии и обновляет их, добавляя следующую строку:

// Modify Here

if (string.IsNullOrEmpty(dateTimePicker1.Value) && string.IsNullOrEmpty(dateTimePicker2.Value))
{
    continue;
}

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

person nsgocev    schedule 06.04.2015
comment
Хорошее решение, и оно отлично работает, чтобы решить мою проблему. Я встроил это в свое решение VS2010 и sitecore v6.6. Слава вам! DateUtil.CompareDatesIgnoringSeconds() недоступен в v6.6 и ищет альтернативу. - person user2386411; 07.04.2015
comment
Привет @ user2386411 Я использовал декомпилированный код из версии 7.2. Я думаю, вы можете сломать решение 6.6 и взять код оттуда. Изменю код, когда у меня будет возможность включить версию 6.6. - person nsgocev; 07.04.2015
comment
Версия 6.6 размещена здесь: ограничения публикации/источник/ - person nsgocev; 07.04.2015