Compilar en tiempo de ejecucion

18/10/2005 - 10:55 por Joan | Informe spam
Hola! Alguien sabe como puedo compilar un trozo de codigo fuente obtenido de
una base de datos? Gracias

Saludos, Joan

Preguntas similare

Leer las respuestas

#1 A.Poblacion
18/10/2005 - 12:02 | Informe spam
"Joan" wrote in message
news:
Hola! Alguien sabe como puedo compilar un trozo de codigo fuente obtenido


de
una base de datos? Gracias



string elTextoFuente = "Codigo leido desde base de datos";
System.CodeDom.Compiler.ICodeCompiler icc;
Microsoft.CSharp.CSharpCodeProvider c = new
Microsoft.CSharp.CSharpCodeProvider();
icc = c.CreateCompiler();
System.CodeDom.Compiler.CompilerParameters cp = new
System.CodeDom.Compiler.CompilerParameters();
cp.ReferencedAssemblies.Add("system.dll");
//Añadir del mismo modo cualquier otra referencia necesaria
cp.CompilerOptions = "/t:library";
cp.GenerateInMemory = true;
System.CodeDom.Compiler.CompilerResults cr icc.CompileAssemblyFromSource(cp, elTextoFuente);
System.Reflection.Assembly a = cr.CompiledAssembly;
//Y a continuación, utilizar Reflection para crear instancias de las clases
que haya en el asembly a.
Respuesta Responder a este mensaje
#2 Joan Ibáñez
20/10/2005 - 09:42 | Informe spam
Pero el codigo leido de la base de datos debe ser una clase? o puede ser
simplemente una funcion?

Saludos,
Joan

"A.Poblacion" escribió en
el mensaje news:
"Joan" wrote in message
news:
> Hola! Alguien sabe como puedo compilar un trozo de codigo fuente


obtenido
de
> una base de datos? Gracias

string elTextoFuente = "Codigo leido desde base de datos";
System.CodeDom.Compiler.ICodeCompiler icc;
Microsoft.CSharp.CSharpCodeProvider c = new
Microsoft.CSharp.CSharpCodeProvider();
icc = c.CreateCompiler();
System.CodeDom.Compiler.CompilerParameters cp = new
System.CodeDom.Compiler.CompilerParameters();
cp.ReferencedAssemblies.Add("system.dll");
//Añadir del mismo modo cualquier otra referencia necesaria
cp.CompilerOptions = "/t:library";
cp.GenerateInMemory = true;
System.CodeDom.Compiler.CompilerResults cr > icc.CompileAssemblyFromSource(cp, elTextoFuente);
System.Reflection.Assembly a = cr.CompiledAssembly;
//Y a continuación, utilizar Reflection para crear instancias de las


clases
que haya en el asembly a.



Respuesta Responder a este mensaje
#3 A.Poblacion
20/10/2005 - 14:12 | Informe spam
"Joan Ibáñez" wrote in message
news:
Pero el codigo leido de la base de datos debe ser una clase? o puede ser
simplemente una funcion?



El código tiene que ser una clase. Si solo es una función, siempre puedes
rodearlo de un "class" después de haberlo leído y antes de compilarlo.
Respuesta Responder a este mensaje
#4 Joan Ibáñez
20/10/2005 - 16:02 | Informe spam
Ok! Muchas gracias

Saludos,
Joan

"A.Poblacion" escribió en
el mensaje news:%23T3mZ$
"Joan Ibáñez" wrote in message
news:
> Pero el codigo leido de la base de datos debe ser una clase? o puede ser
> simplemente una funcion?

El código tiene que ser una clase. Si solo es una función, siempre


puedes
rodearlo de un "class" después de haberlo leído y antes de compilarlo.


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida