我们拥有一个将文件存储在临时位置的应用程序,直到用户决定完成交易为止。临时目录对于每个事务都是唯一的。一旦完成,文件将从临时位置移动到最终位置,这对于每个事务也是唯一的。一切正常,没有任何问题。
我很惊讶,但是在搜索Google和SO时,我们找不到任何通常被认为是最佳做法的主题:
由于这些决定通常取决于许多因素,因此我应注意以下情况:
我认为最大的问题不是速度,而是速度:移动错误会发生什么?
我将使用LukeH答案中的信息,而不是在此重复。
如果MoveFile
目录移动无法移动单个文件,则应采取适当的行为。如果使用每个文件移动,则必须以适当的方式自己处理错误情况。这需要仔细考虑。
请注意,的文档MoveFile
指定:
一个警告是,当目标位于不同的卷上时,MoveFile函数将在目录移动时失败。
这可能对您来说不是问题,也不是使用逐文件Move的原因。该Directory.Move
文档明确提到这(对于和参考源Directory.Move
明确地检查源和具有相同根目的地)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句