我有简单的命令行应用程序,我想存储在程序启动之间输入的命令。
单独存储不是问题,我知道该怎么做,但是我如何恢复它?
Console
类没有任何设置历史记录的方法,如果我在应用程序启动时按向上箭头,它是空的。
来自msdn的方法对于非托管代码对我没有帮助,好的答案可以告诉我如何在 C# 中使用它们来获得我需要的东西。
我的想法是仅使用 ReadKey
覆盖向上箭头,并以“困难”的方式进行,但如果有更简单的方法,我会很高兴。
最佳答案
我只需将命令保存为 XML 或关系数据库,当需要时,我会将 XML 反序列化为存储为列表或可能数组的适当对象(如果您有定义数量的命令,例如最后一个命令) 10)。然后按照您提到的方式重写相应的事件,并通过保留您在列表中的位置的计数器来迭代命令对象列表。
关于C# 控制台应用程序命令 session 历史记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13490497/