1
我目前在由另一個應用程序以編程方式生成和編譯的Winform中使用下面的代碼,在此過程中,我將一個程序集嵌入到winform的資源中,以便它不需要外部參考。每當我們嘗試解析一個程序集並從資源中加載它時,就會調用下面的代碼。C#從內部資源加載程序集
AppDomain.CurrentDomain.AssemblyResolve += (sender, args) => {
String resourceName = "AssemblyLoadingAndReflection." +
new AssemblyName(args.Name).Name + ".dll";
using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName)) {
Byte[] assemblyData = new Byte[stream.Length];
stream.Read(assemblyData, 0, assemblyData.Length);
return Assembly.Load(assemblyData);
}
};
然而,問題是,這似乎只在.NET 4中工作和理想,我需要這在.net中2這樣的工作所創建的winform可以被髮送到客戶端,作爲.NET 2框架是安裝有Windows,但.net 4不是。我怎麼能在.net 2中實現相同的結果?
會發生什麼事,當你嘗試在.NET 2? – 2011-02-22 22:59:38
不要讓我們猜測.NET 2.0出了什麼問題 – 2011-02-22 23:01:14
代碼不會編譯它,它會在右括號和=>所在的位置引發錯誤。 – 2011-02-22 23:03:13