0

我只是在做一个数据库检查以查看是否有任何行已过期,但是我在 db.servicers.Remove(servicer)上收到 System.Data.Entity.Dbset 错误,说那段代码有一些无效的参数。我的小代码是

var servicer = (from s in db.servicers where
                DateTime.Now >= s.expired select s).ToList();

        if (servicer.Any())
        {
            db.servicers.Remove(servicer);
            db.SaveChanges();
        }

expired字段是一个日期时间,我只想循环数据库并删除今天过期或已过期的任何记录;解决此错误的最佳方法是什么。

4

1 回答 1

0

就像 Lews Therin 所说的 Remove 需要一个类型 T 所以你应该枚举你的列表。

var servicer = (from s in db.servicers where
                DateTime.Now >= s.expired select s).ToList();

    if (servicer.Any())
    {
        foreach(var s in servicer) 
        {
            db.servicers.Remove(s);
        }
        db.SaveChanges();
    }
于 2013-05-04T22:11:51.093 回答