我正在尝试在单独的应用程序域上创建动态程序集,如下所示:
string webProfilesNamespace = ConfigurationManager.AppSettings["Profiles.Web.Namespace"];
AssemblyName webAName = new AssemblyName(webProfilesNamespace);
AppDomain webDomain = AppDomain.CreateDomain("WebDomain");
AssemblyBuilder webAsmBuilder = webDomain.DefineDynamicAssembly(webAName, AssemblyBuilderAccess.RunAndSave);
问题是,当我致电DefineDynamicAssebly
时,我一直收到此错误:
在程序集'mscorlib中输入'System.Reflection.Emit.AssemblyBuilder', Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'是 没有标记为可序列化。
为了能够在新创建的应用程序域上定义动态程序集,我该怎么做?
答案 0 :(得分:2)
在新的应用域中调用DefineDynamicAssembly
。也许使用AppDomainCallback
来做到这一点。我忘记了调用这个方法的方法。