Introduction
Generally there could be a requirement such that an independent component needs its own configuration settings like for example, let's say I have a VC++ application which acts as a container so that it can load an Active X Control in it. Now as a new technology I want to use a plugin to be built in the Visual C# Language using the .NET Framework. As we already know, we can build the Active X Component using the .NET Framework. Now let's say my component plugin needs to interact with the Database, so I need to provide it a Connection String and I can't hard-code it inside my Component so I decided to have an application configuration file (i.e., App.Config file), but how can I map this file to my plugin when it is running in my VC++ container?
This article explains how we can solve this issue, and how we can map this config file even when it is converted to an Active X Control and running in another environment.
Background
You need to have a basic knowledge of creating an Active X Control or look for my next article "How to Create an Active X Control Using the .NET Framework".
Explanation
I don't want to make it too complex for you, since we are on the subject specified in the Introduction section.
We may have other options like maintaining a separate XML file and have all the complex custom access through the XML file using xpath technology. But the way we access this configuration file using System.
Configuration.ConfigurationManager Class is very Flexible and comfortable.
The solution is simple; we need to create a class and name it; for my example I used the name "ChangeMyAppConfig" and this class is derived frm the "AppConfig" Class.
public class ChangeAppConfig : AppConfig
{
private readonly string oldConfig =
AppDomain.CurrentDomain.GetData("APP_CONFIG_FILE").ToString();
private bool disposedValue;
public ChangeAppConfig(string path)
{
AppDomain.CurrentDomain.SetData("APP_CONFIG_FILE", path);
ResetConfigMechanism();
}

Join the conversation! Your thoughts help the community grow.