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

Ravindra S. Rathore
Oct 17, 2019
  2746
(8 votes)

Playing with Episerver webconfig settings programmatically

Hi Guys,

Sometimes we need to read, write or update some of the property from the Episerver web.config so Episerver provided a class called "EPiServerFrameworkSection". By using this class we can achieve this.

I found this class very handy and I used this many times when I have to read, write and update the settings on web.config programmatically.

This exists in "EPiServer.Framework.Configuration" namespace.

Some Examples-

Reading providers from config-

ProviderSettingsCollection virtualRoles = EPiServerFrameworkSection.Instance.VirtualRoles.Providers;
ProviderSettingsCollection blobProviders = EPiServerFrameworkSection.Instance.Blob.Providers;

Reading connections string -

var ConnectionStrings = EPiServerFrameworkSection.Instance.CurrentConfiguration.ConnectionStrings;

Reading Appdata path-

string appData = EPiServerFrameworkSection.Instance.AppData.BasePath;

There are lots of other options as well that you can explore on your own. Here are some great documentation from Episerver

https://world.episerver.com/documentation/class-library/?documentId=cms/11/4E02FB31

https://world.episerver.com/documentation/class-library/?documentId=episerverframework/7/09b6aa52-2249-641a-ed99-d6ebe9afc589

Thanks and Regards

Ravindra S. Rathore

Oct 17, 2019

Comments

K Khan
K Khan Oct 18, 2019 07:03 AM

Wondering, what happened when you wrote something programmatically in web.config?

Ravindra S. Rathore
Ravindra S. Rathore Oct 19, 2019 04:42 AM

Hi K Khan,

It will write the entry and recycle the app pool.

valdis
valdis Oct 19, 2019 09:49 AM

I would not recommend to write anything back to web.config :)

Ravindra S. Rathore
Ravindra S. Rathore Oct 19, 2019 10:15 AM

Yes, true but we can use this class to read settings from web.config

Please login to comment.
Latest blogs
A day in the life of an Optimizely OMVP: Introducing Optimizely Style Manager

Managing display templates in Optimizely CMS (SaaS) has traditionally required working directly with the REST API or managing JSON configuration...

Graham Carr | Jan 13, 2026

Content modelling in Optimizely: Why your initial delivery decisions matter more than you think

The architectural shortcuts you take in sprint zero don't just create technical debt, they define whether your platform scales gracefully or crumbl...

Tom Robinson | Jan 12, 2026 |

A day in the life of an Optimizely OMVP: Introducing Query Library and Request Logs: Two Powerful New Features for OptiGraphExtensions v5

I am excited to announce two new features for OptiGraphExtensions v5 that give Optimizely CMS administrators greater visibility and control over...

Graham Carr | Jan 12, 2026

Indexing Geta Categories in Optimizely Graph

Different ways to fully use categories in headless architecture.

Damian Smutek | Jan 9, 2026 |