Como recarregar um assembly para um domínio de aplicativo .NET?

Estamos carregando um assembly (uma DLL) que lê um arquivo de configuração. Precisamos alterar o arquivo de configuração e, em seguida, recarregar o assembly. Vemos que depois de carregar a montagem na segunda vez, não há alteração na configuração. Alguém vê o que está errado aqui? Deixamos de fora os detalhes da leitura no arquivo de configuração.

<code>AppDomain subDomain;
string assemblyName = "mycli";
string DomainName = "subdomain"; 
Type myType;
Object myObject;

// Load Application domain + Assembly
subDomain = AppDomain.CreateDomain( DomainName,
                                    null,
                                    AppDomain.CurrentDomain.BaseDirectory,
                                    "",
                                    false);

myType = myAssembly.GetType(assemblyName + ".mycli");
myObject = myAssembly.CreateInstance(assemblyName + ".mycli", false, BindingFlags.CreateInstance, null, Params, null, null);

// Invoke Assembly
object[] Params = new object[1];
Params[0] = value;
myType.InvokeMember("myMethod", BindingFlags.InvokeMethod, null, myObject, Params);

// unload Application Domain
AppDomain.Unload(subDomain);

// Modify configuration file: when the assembly loads, this configuration file is read in

// ReLoad Application domain + Assembly
// we should now see the changes made in the configuration file mentioned above
</code>

questionAnswers(4)

yourAnswerToTheQuestion