Five New Optimizely Certifications are Here! Validate your expertise and advance your career with our latest certification exams. Click here to find out more

Scott Reed
Mar 4, 2025
  502
(4 votes)

CMS 12 DXP Migrations - Time Zones

When it comes to migrating a project from CMS 11 and .NET Framework on the DXP to CMS 12 and .NET Core one thing you need to be aware of is the infrastructure.

On CMS 11 .NET Framework we are running on direct Windows WebApps in Azure

Whereas on CMS 12 .NET Core we are running on Docker contained Lixux WebApps

One of the issues we've faced on this during migrations that something to be aware of is the website timezone value which might be set on directly in the settings for the WebApps on the DXP when running under CMS 11. For example for sites we've had running in USA

This can cause an issue as when going through the project migration process in the DXP to migrate a project over the new infrastructure running in Docker is set to run under UTC and thefore if you have an C# calls to ToLocalTime() in your code you make get different values on this in the new infrastructure.

Luckily however there's an easy way to solve this, you can add a setting in to the "App Settings" area of your new project to tell the Docker container what timezone to run under,

Example values supported are as follows (Should support any that Docker supports https://en.wikipedia.org/wiki/List_of_tz_database_time_zones)

Time Zone Identifier
GMT
Pacific/Apia
HST
AST
America/Los_Angeles
America/Phoenix
America/Mazatlan
America/Denver
America/Belize
America/Chicago
America/Mexico_City
America/Regina
America/Bogota
America/New_York
America/Indianapolis
America/Halifax
America/Caracas
America/Santiago
America/St_Johns
America/Sao_Paulo
America/Buenos_Aires
America/Godthab
Atlantic/South_Georgia
Atlantic/Azores
Atlantic/Cape_Verde
Africa/Casablanca
Europe/Dublin
Europe/Berlin
Europe/Belgrade
Europe/Paris
Europe/Warsaw
ECT
Europe/Athens
Europe/Minsk
Europe/Bucharest
Africa/Cairo
Africa/Harare
Europe/Helsinki
Asia/Jerusalem
Asia/Baghdad
Asia/Kuwait
Europe/Moscow
Africa/Nairobi
Asia/Tehran
Asia/Muscat
Asia/Baku
Asia/Kabul
Asia/Yekaterinburg
Asia/Karachi
Asia/Calcutta
Asia/Katmandu
Asia/Almaty
Asia/Dhaka
Asia/Colombo
Asia/Rangoon
Asia/Bangkok
Asia/Krasnoyarsk
Asia/Hong_Kong
Asia/Irkutsk
Asia/Kuala_Lumpur
Australia/Perth
Asia/Taipei
Asia/Tokyo
Asia/Seoul
Asia/Yakutsk
Australia/Adelaide
Australia/Darwin
Australia/Brisbane
Australia/Sydney
Pacific/Guam
Australia/Hobart
Asia/Vladivostok
Pacific/Noumea
Pacific/Auckland
Pacific/Fiji
Pacific/Tongatapu

Mar 04, 2025

Comments

Mike Malloy
Mike Malloy Mar 4, 2025 03:13 PM

How did you determine that the name was "TZ" ?

Scott Reed
Scott Reed Mar 4, 2025 04:01 PM

It's s standard docker thing that was pointed out to us by Optimizely support

Please login to comment.
Latest blogs
What is ConstructorParameterResolver?

A few weeks ago I stumbled on a little-known feature and searching for it didn't reveal much about it. I managed to figure out how it's supposed to...

Daniel Ekeblad | Mar 21, 2025

Links in Optimizely Cms: A guide

In Optimizely CMS there are several ways to link to internal or external content using different property types, and there are several ways to rend...

Torunn Surnflødt | Mar 21, 2025

The Fragment Conundrum

Explore the challenges and opportunities of working with Optimizely SaaS, GraphQL fragments, and headless CMS architectures. Learn practical...

Andy Blyth | Mar 21, 2025 |

Leveraging Optimizely’s AI Agents: Embracing the Agentic Future

Discover how Optimizely’s AI Agents leverage agentic AI to autonomously execute complex tasks, enhancing digital workflows and driving innovation f...

Andy Blyth | Mar 20, 2025 |