C# C语言的检查点库#

C# C语言的检查点库#,c#,C#,我正在寻找C#的检查点库。有什么想法吗 见如果我理解正确(问题很模糊,所以我完全不确定),那么Windows工作流基金会肯定有这个能力。然而,对于你的要求,这几乎肯定是过分的 好的,您添加了一个链接,可以更好地解释检查点的含义 考虑到这一点,.Net没有任何内置功能来直接支持这一点。然而,任何使用状态机的东西,如果状态机可以持久化,可以检查/验证,并且是事务性的,那么这种东西自然是内置的。WWF就是一个例子。根据维基百科的链接,我可以告诉你.NET/CLR不支持这一点。这之所以不可能,是因为.

我正在寻找C#的检查点库。有什么想法吗


如果我理解正确(问题很模糊,所以我完全不确定),那么Windows工作流基金会肯定有这个能力。然而,对于你的要求,这几乎肯定是过分的


好的,您添加了一个链接,可以更好地解释检查点的含义


考虑到这一点,.Net没有任何内置功能来直接支持这一点。然而,任何使用状态机的东西,如果状态机可以持久化,可以检查/验证,并且是事务性的,那么这种东西自然是内置的。WWF就是一个例子。

根据维基百科的链接,我可以告诉你.NET/CLR不支持这一点。这之所以不可能,是因为.NET不允许您检查或修改应用程序堆栈,而这又是由于.NET中内置的安全性而不可能的。

我认为没有内置的支持,但构建自己的应用程序堆栈应该相对容易。 假设您有一个中央应用程序类存储您的应用程序状态,或者至少存储检查点中使用的部分。然后,您可以在需要时使用序列化来存储应用程序的状态。此外,如果以后需要,可以很容易地将快照存储在文件的数据库中。但这需要您编写自己的库来支持它


当我写这篇文章的时候,我开始觉得在这个框架中必须有一些支持。以System.Transactions命名空间为例

这应该可以使用事务(提交/回滚)或撤消来实现。如果你正确地设计了你的类和操作,那么它会起作用,当然,它需要一些艰苦的工作和使用这些类的纪律。您还需要注意异常


(如符文所示)似乎是一个很好的候选者,或者至少是一个很好的起点。

可以通过以特殊方式编写应用程序来模拟功能,以便它可以保存以后从该点开始所需的相关状态,但决不是您可以插入应用程序并构建的东西,你已经完成了。你所解释的并不是维基百科链接所暗示的。不管怎样,如果你觉得这样可以接受,那就好了。就我个人而言,我不会尝试它,因为可能会出现数百个问题(除非我们处理像“扫雷舰”这样的小应用程序)。