2016-06-29 14 views
0

Ich habe mein Kentico-Projekt von 8.2 auf 9 aktualisiert. In Version 9 wird die Klasse "GetTimeZoneTypeEnum" entfernt, aber in meinem Projekt wird sie an einigen Stellen verwendet. Wie kann ich das durch Version 9 API ersetzen? Ich bezog kentico 9 API, sie sagten, 'EnumStringRepresentationExtensions' Klasse zu verwenden. Ich habe versucht, damit zu arbeiten, aber das funktioniert nicht.Klasse "GetTimeZoneTypeEnum" durch kentico 9 ersetzen API

Mein Code-Schnipsel ist:

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

Erste Fehler bei GetTimeZoneTypeEnum. Kann jemand mehr Details geben, um das zu lösen?

Antwort

1

Sie müssen diese Funktion ersetzen und die EnumStrinRepresentaionExtensions verwenden.

Um den ENUM-Wert aus der Eigenschaft timezonetype

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

setzen Sie die Eigenschaft zu erhalten:

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

Werte vom Typ CMS.Globalization.TimeZoneTypeEnum

+0

Danke..Löst mein Problem – sayali

0

Das Verfahren wurde entfernt sein sollen . Sie müssen die TimeZoneTypeEnum selbst verwenden:

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. 

Wenn Sie diese Zeitzonen in einigen String-Format haben Sie diese bitte an die Enum umwandeln oben oder Sie Indizes (switch-case, zweite Spalte).