Take the community feedback survey now.


Aug 12, 2010
  9937
(0 votes)

Debugging initialization modules

I have covered the new initialization system as introduced with EPiServer CMS 6 and EPiServer Community 4 in previous blog posts. See http://world.episerver.com/Blogs/Magnus-Strale/Dates/2009/12/The-new-initialization-system---How-to-write-an-initialization-module-and-advanced-topics/ Just back from a long summer vacation, one of the first tasks was related to a new initialization module and I just wanted to do a quick “debug exploration” before starting on the work proper.

However I utterly failed to get the debugger to halt on a breakpoint in the initialization module. After a coffee I realized that the problem was that the initialization modules execute before the debugger actually hooks up to the process due to the initialization code being invoked from the HttpApplication constructor (actually the EPiServer.Global constructor).

However there is a simple workaround:

  1. Open the EPiServerFramework.config file.
  2. Remove the <automaticSiteMapping> section.
  3. Save the file.
  4. Set your breakpoints in VisualStudio.
  5. Start your EPiServer web app from VisualStudio.

You will now get the debugger to break, since the initialization system will now abort on the first invocation and delay execution until the first BeginRequest, and at that stage the debugger is attached and functional.

Note that the file EPiServerFramework.config will be automatically updated so you might want to set it to read-only to avoid having to edit it constantly.

Aug 12, 2010

Comments

Thomas Dane
Thomas Dane Jul 24, 2017 06:21 PM

This just saved me a lot of time. Thanks very much! 

Johan Book
Johan Book Jul 25, 2017 02:50 AM

In recent versions of Episerver the automaticSiteMapping-section has been removed. A working method using IIS start/stop can be found here:

http://jondjones.com/learn-episerver-cms/episerver-developers-guide/episerver-initialization-module/how-to-debug-an-episerver-scheduled-job-or-initialization-module

Please login to comment.
Latest blogs
Opal Core Concepts

Before you dive into the code, it's crucial to understand the foundational ideas that make Opal tick. Core concepts are consistent across all its...

K Khan | Sep 13, 2025

Optimizely Opal : Reimagining A Utility Sector Use Case

  Introduction Customer engagement through timely and personalized push notifications plays a crucial role in todays Digital First landscape. In th...

Ratish | Sep 12, 2025 |

A day in the life of an Optimizely OMVP - AEO & GEO: The Future of Digital Visibility with Optimizely

The way people discover content online is undergoing a seismic shift. Traditional SEO is no longer enough. With AI-powered tools like ChatGPT,...

Graham Carr | Sep 12, 2025

Building Optimizely OCP Apps Faster with AI and Coding Assistants

Developing Optimizely Connect Platform (OCP) apps can be a rewarding but complex process—especially when integrating with external APIs. Over the...

Pawel Zieba | Sep 11, 2025