コード例 #1
0
            public ProxyAssembly(AssemblyLoadContext alc)
            {
                string name;

                if (alc == AssemblyLoadContext.Default)
                {
                    name = "ProxyBuilder";
                }
                else
                {
                    string?alcName = alc.Name;
                    name = string.IsNullOrEmpty(alcName) ? $"DispatchProxyTypes.{alc.GetHashCode()}" : $"DispatchProxyTypes.{alcName}";
                }
                AssemblyBuilderAccess builderAccess =
                    alc.IsCollectible ? AssemblyBuilderAccess.RunAndCollect : AssemblyBuilderAccess.Run;

                _ab = AssemblyBuilder.DefineDynamicAssembly(new AssemblyName(name), builderAccess);
                _mb = _ab.DefineDynamicModule("testmod");
            }