Ejemplo n.º 1
0
        public static T CreateScriptObject <T>(this ICompiler compiler, CompilationPackage compilationPackage, string typeName, bool throwExceptionOnCompileFailed)
            where T : class
        {
            var assembly = compiler.CompileToAssembly(compilationPackage, throwExceptionOnCompileFailed);

            return(assembly.CreateInstance(typeName) as T);
        }
        private Assembly CompileToAssembly(ScriptClassSourceCode classSourceCode)
        {
            var compilationPackage = BuildCompilationPackage(classSourceCode);

            compilationPackage.AddAllLoadedAssemblyReferences = true;

            return(_compiler.CompileToAssembly(compilationPackage, true));
        }
Ejemplo n.º 3
0
        public static T CreateScriptObject <T>(this ICompiler compiler, CompilationPackage compilationPackage, bool throwExceptionOnCompileFailed)
            where T : class
        {
            var assembly = compiler.CompileToAssembly(compilationPackage, throwExceptionOnCompileFailed);

            var type = assembly.ExportedTypes.FirstOrDefault();

            if (type == null)
            {
                return(null);
            }

            return(Activator.CreateInstance(type) as T);
        }