A critical vulnerability was discovered in React Server Components (Next.js). Our systems remain protected but we advise to update packages to newest version. Learn More

Scott Reed
Mar 4, 2025
  1425
(6 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

Stefan Holm Olsen
Stefan Holm Olsen Jun 12, 2025 11:32 AM

Hi Scott

Was the database already changed to UTC? Or did you change it while upgrading?

Please login to comment.
Latest blogs
CMS Audiences - check all usage

Sometimes you want to check if an Audience from your CMS (former Visitor Group) has been used by which page(and which version of that page) Then yo...

Tuan Anh Hoang | Dec 12, 2025

Data Imports in Optimizely: Part 2 - Query data efficiently

One of the more time consuming parts of an import is looking up data to update. Naively, it is possible to use the PageCriteriaQueryService to quer...

Matt FitzGerald-Chamberlain | Dec 11, 2025 |

Beginner's Guide for Optimizely Backend Developers

Developing with Optimizely (formerly Episerver) requires more than just technical know‑how. It’s about respecting the editor’s perspective, ensurin...

MilosR | Dec 10, 2025

Optimizely PaaS Administrator Certification : Free for Everyone

Optimizely has recently launched a free PaaS Administrator Certification. https://academy.optimizely.com/student/activity/2958208-paas-cms-administ...

Madhu | Dec 9, 2025 |