private static string MainNamespaceOfPlugin(string pluginName)
{
var decoder = AppDomain.CreateDomain("Decode_Assembly", AppDomain.CurrentDomain.Evidence,
new AppDomainSetup { PrivateBinPath = "Plugins", });
decoder.Load(pluginName);
var ns = decoder.GetAssemblies()
.Where(assem => assem.GetName().Name == pluginName)
.SelectMany(assem => assem.GetTypes().Where(type => type.Name == "PluginMain"))
.Select(type => type.Namespace)
.FirstOrDefault();
AppDomain.Unload(decoder);
return ns;
}