Evaluador de Expresiones Matemáticas

17/01/2005 - 19:21 por Edwin Díaz | Informe spam
De casualidad saben cual es la función equivalente en C# a la función eval de
javascript. En javascript esta función evalúa una cadena de expresión
matemática y entrega un resultado escalar. Si alguien la conoce o sabe como,
muchas gracias!

Preguntas similare

Leer las respuestas

#1 Braulio Diez
17/01/2005 - 20:01 | Informe spam
Buenas,

He estado buscando y parece que no hay un función que haga eso
directamente, lo que puedes hacer es lo que he encontrado en los foros de
discusión (crear un DLL con ese código JavaScript, al compilarlo lo puedes
referenciar desde tu aplicacion C#):

Hi,

I have recently seen many questions about the lack of an equivalent to
the JScript eval() function in C# and VB .Net. This is a good
opportunity to demonstrate the cross-langauge capabilities of .Net

1) Create a file named CustomEval.js (File | New | File | Script) as
follows:

// JScript source code
class CustomEval
{
static function eval(strExp)
{
return eval(strExp);
}
}

2) Compile this source code from the command line:

jsc /t:library CustomEval.js

which should produce CustomEval.dll

3) Reference this assembly from your VB .Net or C# project as well as
the Microsoft.JScript assembly.

4) Use the eval method of CustomEval as follows (since the method is
static, you don't need to instantiate CustomEval.

result = CustomEval.eval("2+3")

Buena suerte
Braulio


"Edwin Díaz" wrote:

De casualidad saben cual es la función equivalente en C# a la función eval de
javascript. En javascript esta función evalúa una cadena de expresión
matemática y entrega un resultado escalar. Si alguien la conoce o sabe como,
muchas gracias!
Respuesta Responder a este mensaje
#2 Octavio Hernandez
17/01/2005 - 23:23 | Informe spam
Edwin,

Hay un excelente artículo de José M. Alarcón en un ejemplar anterior de
dotNetMania donde precisamente se muestra cómo compilar código "on the fly"
y se utiliza como ejemplo un evaluador de expresiones.

En la página web de la revista sólo está el código fuente del artículo,
http://www.dotnetmania.com/Articulos/002/, míralo y si te interesa puedes
contactar con el autor.

Slds - Octavio


"Edwin Díaz" <Edwin Dí escribió en el mensaje
news:
De casualidad saben cual es la función equivalente en C# a la función eval
de
javascript. En javascript esta función evalúa una cadena de expresión
matemática y entrega un resultado escalar. Si alguien la conoce o sabe
como,
muchas gracias!
Respuesta Responder a este mensaje
#3 Gandalf
18/01/2005 - 11:28 | Informe spam
Hola, otra posible solución seria usar un interprete de expresiones. Puedes
bajarte el que he hecho de:

http://personal.telefonica.terra.es/web/barrisoft/ (En índice, selecciona
C#: Evaluador de Expresiones y Calculadora)

Está con el código fuente y brevemente documentada.

La ventaja de usar un interprete sobre la compilación es la rapidez del
interprete.

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