【发布时间】:2011-11-10 00:09:34
【问题描述】:
我有一个数据文件,有时我需要对文件进行更改。更改包括在多个地方更改信息。例如,更改文件末尾附近的一些数据以及更改文件开头附近的一些信息。我希望这两个单独的写入要么都成功,要么都失败,否则它会处于不确定状态并被有效地破坏。 .NET 或一般情况下是否对此方案有任何内置支持?
如果不是,那么其他人如何解决这个问题? Windows 上的数据库如何解决这个问题?
更新:我不想使用 Transactional NTFS 功能,因为它在旧版本的 Windows(例如 XP)上不可用,并且在上述文件覆盖方案中速度很慢。 p>
【问题讨论】:
-
你要在什么文件系统上运行?
-
查看事务性 NTFS 它指出文件中的覆盖性能非常慢。这是我的确切情况,因此作为一种方法看起来很慢。数据库如何在不使用 TxNTFS 的情况下管理相同的情况?
-
@PhilWright:数据库的工作原理是几乎整个 IT 历史上大量文献(书籍、学术论文……)的主题。远远超出了SO答案所能涵盖的范围。快速的网络搜索应该会找到一些介绍性内容(如果可以避免噪音)。维基百科应该让你started。
-
我同意 OP 的观点,即这个问题与链接的问题不重复。这里的这个问题比另一个问题更笼统,具体到 Windows 7。
标签: c# windows file transactions