Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在程序中将字符串作为命令执行_C#_Vb.net_Reflection_Command Line_Console - Fatal编程技术网

C# 如何在程序中将字符串作为命令执行

C# 如何在程序中将字符串作为命令执行,c#,vb.net,reflection,command-line,console,C#,Vb.net,Reflection,Command Line,Console,我不认为这是可能的,但值得一问 比如说,我们有这样一个字符串: myNum=30 假设myNum是一个已定义的变量,有没有一种方法可以对此进行评估?我正在为我的程序制作一个开发人员控制台,我以前见过类似的事情。是否可以将字符串转换为程序运行的操作?当然,程序已经编译好了,这让我觉得这是不可能的。 我试图避免使用一个可怕的Select Case/Switch语句,而只是以与Visual Studio处理条件断点类似的方式处理命令 谢谢您抽出时间。好的。它被称为表达式解析器。您可以自己编写一个,

我不认为这是可能的,但值得一问

比如说,我们有这样一个字符串:

myNum=30

假设myNum是一个已定义的变量,有没有一种方法可以对此进行评估?我正在为我的程序制作一个开发人员控制台,我以前见过类似的事情。是否可以将字符串转换为程序运行的操作?当然,程序已经编译好了,这让我觉得这是不可能的。 我试图避免使用一个可怕的Select Case/Switch语句,而只是以与Visual Studio处理条件断点类似的方式处理命令


谢谢您抽出时间。

好的。它被称为表达式解析器。您可以自己编写一个,也可以查找已经编写的第三方库。您还可以考虑使用代码DOM来构建和运行代码。请参阅更多信息。我最后一次得到“免费”是用一个可以评估算术表达式的数据库(SqLyOnLee)。也可以使用PowerBuilder datawindows。这里也有这样的东西不是很好吗?对不起,我不清楚。我以前写过表达式解析器。如何从字符串myNum访问myNum的变量?这取决于。
myNum
是字段、属性还是局部变量?如果它是一个字段或属性,您可以通过反射来获取它,但如果它是一个局部变量,则这不是一个选项。您是否可以将这些“变量”存储在键/值对列表中,例如
字典(字符串、整数)