Ejemplo n.º 1
0
        public static Assembly loadResourceAsAssembly(string name, string resourceName, Assembly currentAssembly)
        {
            var assemblyBytes = getAssemblyAsBytesFromResource(name, resourceName, currentAssembly);

            if (assemblyBytes == null)
            {
                return(null);
            }
            var assembly = Assembly.Load(assemblyBytes);

            if (assembly.isNull())
            {
                return(null);
            }
            LoadedEmbeddedAssemblies.add(assembly.GetName().str(), assemblyBytes);
            return(assembly);
        }
Ejemplo n.º 2
0
        public static string saveEmbeddedAssemblyToDisk(AssemblyName assemblyName)
        {
            if (LoadedEmbeddedAssemblies.ContainsKey(assemblyName.str()))
            {
                return(saveAssemblyBytesToDisk(assemblyName.Name, LoadedEmbeddedAssemblies[assemblyName.str()]));
            }
            //if not there try to reload it from the current loaded assemblies
            var assembly = loadFromEmbededResources(assemblyName.Name);

            if (assembly.notNull())
            {
                if (LoadedEmbeddedAssemblies.ContainsKey(assemblyName.str()))
                {
                    return(saveAssemblyBytesToDisk(assemblyName.Name, LoadedEmbeddedAssemblies[assemblyName.str()]));
                }
            }
            return(null);
        }