AppDomain.CurrentDomain.AssemblyResolve += (sender, senderArgs) => {
var executingAssembly = Assembly.GetExecutingAssembly();
var assemblyName = new AssemblyName(executingAssembly.FullName).Name;
var dllName = new AssemblyName(senderArgs.Name).Name;
var dllUri = assemblyName + "." + dllName + ".dll";
using (var resourceStream = executingAssembly.GetManifestResourceStream(dllUri)) {
var assemblyData = new Byte[resourceStream.Length];
resourceStream.Read(assemblyData, 0, assemblyData.Length);
return Assembly.Load(assemblyData);
}
};