我有很多用 c# 控制台应用程序编写的函数来说明不同的代码集。假设我有 writeXML()、readXML()、writeText()、ReadText() 等函数
我的 Main() 函数将打开命令提示符,现在,是否可以转到 cmd 并执行特定函数,一一说明并显示每个函数的输出???
我有很多用 c# 控制台应用程序编写的函数来说明不同的代码集。假设我有 writeXML()、readXML()、writeText()、ReadText() 等函数
我的 Main() 函数将打开命令提示符,现在,是否可以转到 cmd 并执行特定函数,一一说明并显示每个函数的输出???
简而言之, ans 是不可以的。
但是是的,您可以reflection
结合使用 withConsole.ReadLine()
来做您想做的
事情
while(true)
{
var cmd = Console.ReadLine();
var methodInfo = from m in (classObject).GetType().GetMethods() where m.Name == cmd;
methodInfo.Invoke(classObject, new object[] { /* arguments to method */ });
}
注意:-我在这里给出的代码只是一个伪代码并且无效,但是一旦你开始应用它,你就可以通过它
也许用于交互式 C# 的Roslyn是一种选择?
它甚至有一个脚本 API,但我对这个独立的 Roslyn REPL非常满意(现在还有一个更优雅的 GUI)。