我目前正在从事一个ASP.NET MVC项目,该项目允许用户将文件上传到服务器,并将它们与另一个对象相关联
public class FileAttachment
{
[Key]
public int Id { get; set; }
public string Title { get; set; }
public string ContentType { get; set; }
public string Extension { get; set; }
[ForeignKey("Donor")]
public int DonorId { get; set; }
public virtual Donor Donor { get; set; }
}
public class Donor
{
[Key]
public int Id { get; set; }
// .....
public virtual List<FileAttachment> Attachments { get; set; }
}
我想知道的是,是否有一种方法可以为实体框架指定一个函数,以便在从DbSet中删除某个赋予者或FileAttachment对象时执行,因为附件存储在文件系统中,所以我需要确保该文件被删除。
发布于 2013-06-20 22:29:25
数据库通常不会在数据更改时调用应用程序进行通知。如果您将数据库设计为管理附件文件,而不是管理您的应用程序,则会容易得多。
我不确定您使用的是什么数据库,但如果您使用的是Microsoft SQL Server,您应该考虑使用FileStream data type。
https://stackoverflow.com/questions/17224503
复制