Ravindra S. Rathore
+8
Oct 17, 2019
visibility 3151
star star star star star
(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

error Please login to comment.
Latest blogs
Composition Over Inheritance: Why Your Content Contract Is Not a Base Class

Inside the structural conformance pattern in SaaS CMS — from server-side inheritance to pipeline governance. A contract in Optimizely SaaS CMS is...

Vipin Banka | Sep 19, 2026

Optimizely Opti ID Integration: Why the API Key Was Missing from the DXP Management Portal

While working on an Optimizely CMS 12 Opti ID integration recently, we ran into an issue that initially appeared to be related to SSO authenticatio...

Madhu | Sep 18, 2026 |

Extending a Contract: What You Can Override

Contracts share fields across content types — but not every field setting can be overridden. Push the same contract onto several components, and CM...

Chirag Khanna | Sep 18, 2026 |

Building a Blazor Server UI Inside the Optimizely CMS 13 Admin Shell

What I learned shipping a Blazor Server UI inside Optimizely CMS 13 — Razor components in a NuGet package, the Blazor hub next to MapContent(),...

Stanisław Szołkowski | Sep 17, 2026 |