删除图片的网址,但不会删除图片

本文关键字:删除 | 更新日期: 2023-09-27 17:56:33

我的问题是我正确地将 URL 添加到图像中,但是当我尝试删除它时......

 public ActionResult DeleteConfirmed(int id)
    {
        article article = db.articles.Find(id);
        db.articles.Remove(article);  
        db.SaveChanges();
        var a = db.image.Where(r => r.articleid == id); 
        foreach (var b in a)
        {
            string location = Path.Combine(Server.MapPath(b.url));
            System.IO.File.Delete(location);
           article.images.Remove(b);

        }
        db.SaveChanges();
        return RedirectToAction("Index");
    }

删除图片的网址,但不会删除图片

只是一个疯狂的猜测,但第一个db.SaveChanges();从数据库中删除了文章,所以在你拉出删除文件所需的 id 之前,它是否也可以级联并删除相关的图像引用?

尝试删除第一个db.SaveChanges();

您需要先删除图像,然后再删除任务。或者在表中使用级联。

  it should be

db.image.Remove(b);

 instead of 

文章.图像.删除(b)