Te adjunto lo que contestaron cuando hice la misma pregunta

 

 

 


Bonansea, Gustavo Alberto <[EMAIL PROTECTED]>  


a c#

mostrar detalles

 26/12/05 


Sebastián, no tenés algo parecido en C#, pero se puede ejecutar sentencias
que estén escritas en una cadena, no tan directamente quizás. Para ello .Net
incorpora una característica que se llama CodeDom que te permite escribir,
compilar y ejecutar código dinámicamente. Puedes utilizar esta tecnología
para ejecutar código generado "onfly". Si solo deseas llamar a algún método
de forma dinámica te recomiendo utilizar Reflection, el cual te da la
posibilidad de cargar assemblies, crear objetos y ejecutar métodos y
propiedades dinámicamente. Mirá acá tengo un ejemplito de como obtener los
métodos y propiedades de un objeto por Reflection
<http://spaces.msn.com/members/misopiniones/Blog/cns!1ptJaLyGJnsVGyHySvrm_m9
w!530.entry>
http://spaces.msn.com/members/misopiniones/Blog/cns!1ptJaLyGJnsVGyHySvrm_m9w
!530.entry

Una vez que tenés el objeto MethodInfo que representa a un método en
particular podés utilizar una llamada a Invoke para ejecutarlo y obtener el
valor de retorno. Si te interesa esta opción podemos ver un ejemplo más
completo

 

Si tu necesidad va más allá de la ejecución de un método en particular y
querés ejecutar código de forma dinámica fijate en este ejemplo que crea un
textbox que evaluá expresiones matemáticas dinámicamente. En este caso está
limitado por cuestiones de seguridad a la ejecución de expresiones
aritméticas, pero puede ejecutarse cualquier cosa que se encuentre dentro de
.Net:

 
<http://www.elguille.info/colabora/puntoNET/gbonansea_TextoboxCalculator.htm
>
http://www.elguille.info/colabora/puntoNET/gbonansea_TextoboxCalculator.htm

 

Espero que te sirvan los ejemplos. Fijate cual de las opciones es la más
viable para tu problema y la seguimos por ese lado.

Saludos

 

Ing. Gustavo Bonansea 
 <http://blog.gustavobonansea.com.ar/> blog.gustavobonansea.com.ar 
Software Engineer 
PECTRA Technology Inc.  
Córdoba: +54 (351) 410 4400 - Int. 9301
Houston: +01 (713) 335 5552 
www.pectra.com 

GRUPO PROMINENTE 
Soluciones Tecnológicas 
www.grupoprominente.com 

 

  _____  

From: Sebastián Márquez [mailto: <mailto:[EMAIL PROTECTED]>
[EMAIL PROTECTED] 
Sent: Viernes, 23 de Diciembre de 2005 10:13 a.m.
To: c# List Member
Subject: [c#] macro sustitucion en VS2005 ?

Macrosustitucion era algo muuuuyyy loco que tiene Visual Fox que te permite
armar codigo dentro de un string y ejecutarlo en tiempo de ejecucion (valga
la redundancia)

Por ejemplo, pongo en codigo C# para que sea mas entendible, ojo, esto no
funciona es un ejemplo traducido a C#

 

string var1 = "Metodo1();"

&var1; //donde el & seria el operador de macrosustitucion

 

Como resultado de esto, en teoria el Metodo1 seria ejecutado.

Esto es muy util en vf y te permite hacer cosas ultra extra genericas en un
abrir y cerrar de ojos... igualmente, yo creo que no debe ser una practica
recomendable por cuestiones de performance y esas cosas....

 

Saludos

 

 

Sebastián Márquez

Analista Programador

 

  _____  

De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] En nombre de Diego Jancic
Enviado el: Jueves, 22 de Diciembre de 2005 08:24 p.m.
Para: c# List Member
Asunto: [c#] macro sustitucion en VS2005 ?

 

Podes comentar un poco que significa, porque no se visual fox (por suerte
:D) como para entenderlo.... Que es el &???

 

Saludos!,

Diego

 

  _____  

From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ricardo Macrino
Sent: Jueves, 22 de Diciembre de 2005 17:34
To: c# List Member
Subject: [c#] macro sustitucion en VS2005 ?

 

Alguien sabe si ahora se puede hacer macro substitución en C# ?

 

Yo en VFox hacia

 

a="pepe"

m=&a

&a=99

m=&a

print m 

......y daba 99

 

gracias




 

 

 

 

 

De: puntonet@mug.org.ar [mailto:[EMAIL PROTECTED] En nombre de Alejandro
David Nelis Robles (GUFA)
Enviado el: Lunes, 26 de Noviembre de 2007 08:06 p.m.
Para: puntonet@mug.org.ar
Asunto: [puntonet] Crear variables en ejecución y hacer calculos de esas
variables.

 

Gente:

 

    En FOX yo podía crear variables en modo de ejecución, y luego podía
hacer cálculos con estas, como podría hacer lo mismo en .NET.

 

 

 

Desde ya muchas gracias.

 

Alejandro Nelis

I'm protected by SpamBrave <http://www.spambrave.com/> 

Responder a