<p>We have an "engine" that loads dlls dynamically (whatever is located in a certain directory) and calls Workflow classes from them by way of reflection.</p>

<p>We now have some new Workflows that require access to a database, so I figured that I would put a config file in the dll directory.</p>

<p>But for some reason my Workflows just don't see the config file.</p>

<pre><code>&lt;configuration&gt;
  &lt;appSettings&gt;
      &lt;add key="ConnectString" value="Data Source=officeserver;Database=mydatabase;User ID=officeuser;Password=officeuser;" /&gt;
  &lt;/appSettings&gt;
&lt;/configuration&gt;
</code></pre>

<p>Given the above config file, the following code prints an empty string:</p>

<pre><code>Console.WriteLine(ConfigurationManager.AppSettings["ConnectString"]);
</code></pre>

<p>I think what I want is to just specify a config filename, but I'm having problems here.  I'm just not getting results.
Anyone have any pointers?</p>

Funny, where I'm at we're doing something very similar and the config file loads just fine.  In our case I think each new config file's name matches that of it's associated assembly.  So MyLibrary.dll would have a file named MyLibrary.dll.config with information for that file assembly.  Also, the example I have handy is using VB.Net rather than C# (we have some of each) and all the settings in there are for the VB-specific My.Settings namespace, so we don't use the ConfigurationManager class directly to read them.
The settings themselves look like this:
```
```
<applicationSettings>
    <MyLibrary.My.MySettings>
        <setting name="SomeSetting" serializeAs="String">
            <value>12345</value>
        </setting>
    </MyLibrary.My.MySettings>
</applicationSettings>
```
```