Platform shift: Transition from legacy ASP.NET Framework to modern ASP.NET Core
Project structure: SDK-style projects simplify dependencies and file management
Configuration: Move from Web.config to layered appsettings.json and the Options Pattern
Hosting: Kestrel and a minimal Program.cs replace Global.asax and IIS-heavy setups
This module provides an in-depth examination of the fundamental .NET and configuration changes inherent in Optimizely CMS 12 and Commerce 14. Understanding these shifts is essential when transitioning existing solutions or building new ones on the latest Optimizely DXP.
Key .NET Changes
1. Project File Format (.csproj)
Simplified Structure: Automatic file inclusion via globbing.
SDK-Style Projects: Projects reference an SDK such as Microsoft.NET.Sdk.Web.
public class MyCustomSettings
{
public string Setting1 { get; set; }
public int Setting2 { get; set; }
}
services.Configure<MyCustomSettings>(
Configuration.GetSection("MyCustomSection")
);
Use dotnet user-secrets during development and secure environment variables or key vaults in production to manage sensitive configuration data without committing it to source control.
Conclusion
Migrating to CMS 12 and Commerce 14 introduces a modernized .NET foundation, improved configuration management, and a streamlined hosting model. Mastering these architectural shifts ensures smoother migration and future-ready Optimizely solutions.