C# 在一个事务中从数据库和磁盘上的目录中删除行

C# 在一个事务中从数据库和磁盘上的目录中删除行,c#,asp.net,data-synchronization,C#,Asp.net,Data Synchronization,可能重复: 我正在写一个ASP.NET应用程序。我在数据库中有一行,具有指向磁盘上文件夹的物理路径。我想在一个事务中删除行并删除目录。即,确保两个都已删除或未删除 我正在使用实体框架与数据库通信 要删除的文件夹包含可供网站用户查看的图像。恐怕我可能会在IIS将图像传输给用户时尝试删除该文件夹。为此,您需要使用,如果您的服务器是Windows 2008 R2或2012,则该文件夹将正常工作,因为事务将通过SQL和。确保分布式事务处理协调器windows服务处于运行状态。@Rawling:不是重复

可能重复:

我正在写一个ASP.NET应用程序。我在数据库中有一行,具有指向磁盘上文件夹的物理路径。我想在一个事务中删除行并删除目录。即,确保两个都已删除或未删除

我正在使用实体框架与数据库通信


要删除的文件夹包含可供网站用户查看的图像。恐怕我可能会在IIS将图像传输给用户时尝试删除该文件夹。

为此,您需要使用,如果您的服务器是Windows 2008 R2或2012,则该文件夹将正常工作,因为事务将通过SQL和。确保分布式事务处理协调器windows服务处于运行状态。

@Rawling:不是重复。另一个是寻找最佳实践,但没有一个答案适用于这个问题的要求。这看起来正是我需要的,谢谢!但是,乍一看似乎并不简单,所以我需要学习一些手册。不幸的是,Microsoft声称事务性NTFS在未来的Windows版本中可能会被弃用,他们不建议使用它:他们建议使用SQL文件流作为替代,我现在正在深入研究。如果你想使用SQL文件流,你应该先做一些测试,记住SQL Server比NTFS慢,当你从磁盘加载映像和从SQL加载映像时,你会注意到一个很大的区别。SQL filestream性能在超过1Mb的大BLOB值上达到最佳。