Замена класса GetTimeZoneTypeEnum на Kentico 9 API

Я обновил свой проект kentico с 8.2 до 9. В версии 9 класс GetTimeZoneTypeEnum удален, но в моем проекте он используется в некоторых местах. Как я могу заменить это API версии 9. Я сослался на API Kentico 9, они сказали использовать класс EnumStringRepresentationExtensions. Я пытался работать с этим, но это не работает.

Мой фрагмент кода:

if (GetValue("timezonetype") != null)            
{
  timePicker.TimeZone = TimeZoneInfoProvider.**GetTimeZoneTypeEnum**(ValidationHelper.GetString(GetValue("timezonetype"), ""));
}

Получение ошибки в GetTimeZoneTypeEnum. Может ли кто-нибудь дать более подробную информацию, чтобы решить эту проблему?


person sayali    schedule 29.06.2016    source источник


Ответы (2)


Вам нужно заменить эту функцию и использовать EnumStrinRepresentaionExtensions.

Чтобы получить значение перечисления из свойства timezonetype

if (GetValue("timezonetype") != null)
{
       timePicker.TimeZone = EnumStringRepresentationExtensions.ToEnum<CMS.Globalization.TimeZoneTypeEnum>(ValidationHelper.GetString(GetValue("timezonetype"), ""));
}

установить свойство:

SetValue("timezonetype",EnumStringRepresentationExtensions.ToStringRepresentation<CMS.Globalization.TimeZoneTypeEnum>(value))

значение должно иметь тип CMS.Globalization.TimeZoneTypeEnum

person Dawid Jachnik    schedule 29.06.2016
comment
Спасибо .. Решил мою проблему - person sayali; 29.06.2016

Метод был удален. Вам нужно использовать сам TimeZoneTypeEnum:

Inherit  0   Indicates whether time zone type is inherited.  
Server   1   Server timezone type.  
WebSite  2   WebSite timezone type.  
User     3   User timezone type.  
Custom   4   Custom timezone type. 

Если у вас есть эти часовые пояса в каком-то строковом формате, преобразуйте их в приведенное выше перечисление или индексируйте (переключатель, второй столбец).

person JanH    schedule 29.06.2016