物理驱动器文件与ASP.NET MVC中的数据库文件匹配

时间:2012-12-12 12:40:39

标签: sql asp.net-mvc

我的网站上有一个上传按钮,上传按钮保存了用户在我的硬盘上选择的文件(现在),它还保存了名称(使用Guid.NewGuid)+友好名称(实际名称)在数据库中。

该文件保存在Content / Usercontent(Guid.NewGuid名称)中,但我想要的是,当您从数据库中删除一行时,地图Content / Usercontent中的文件也被删除了,怎么做我使用ASP.NET MVC执行此操作

编辑:为什么我被投了票? Atleast告诉我在我的问题上应该改进什么。

1 个答案:

答案 0 :(得分:0)

只要您已经连接到名为OnDelete的事件(例如),那么您可以将其与删除该关联文件的例程同步。

我会创建一个类,它是从数据库中添加和删除文件的唯一管理器。然后,当您上传文件时我要做的就是调用类documentMgr.Save(string fileName, string serverPath, byte[] fileContents)

在DocumentManager类中,我将创建一个名为FileDeleted的事件,其中deegate接受以下args(object sender, FileEventArgs fileArg s)并在该类上创建一个名为OnFileDeleted(object sender, FileEventArgs fileArgs)的事件处理程序,并在该事件处理器上引发OnFileDeleted事件。调用DocumentManager.DeleteDocument(字符串名称,字符串等)。

事件处理程序可以从当时处理(如果事件是公共的)。

您可以在DocumentManager的构造函数中连接事件,然后使用dea调用自动删除文件并使用事件,您可以选择执行更多操作并稍后扩展功能。

让我知道你是如何上场的