我有一个C#.net 4应用程序,我正在尝试实现Await Async。我最终使用了NuGet的AsyncBridge。这很好用,除了我必须确保AsyncBridge.dll位于我的独立应用程序。为了解决这个问题,我尝试通过
将.dll动态加载为嵌入式资源AppDomain.CurrentDomain.AssemblyResolve + = new ResolveEventHandler(CurrentDomain_AssemblyResolve);
static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
{
using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("EmbedAssembly.AsyncBridge.dll"))
{
byte[] assemblyData = new byte[stream.Length];
stream.Read(assemblyData, 0, assemblyData.Length);
return Assembly.Load(assemblyData);
}
}
我的问题所有教程都显示异常"无法加载程序集"他们开始了ResovleEventHandler。当我的程序崩溃试图找到dll时,它是下面的例外。
未处理的类型' System.IO.FileLoadException'发生在System.WIndows.Forms.dll中。添加信息:无法加载文件或程序集' AsyncBridge。
我怎么能启动类似的事件来从System.IO.FIleLoadException读取我的dll作为嵌入式资源?
谢谢