Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Entity framework 当AutoDetectChangesEnabled=false时更新相关数据_Entity Framework - Fatal编程技术网

Entity framework 当AutoDetectChangesEnabled=false时更新相关数据

Entity framework 当AutoDetectChangesEnabled=false时更新相关数据,entity-framework,Entity Framework,我正在尝试更新一个简单的模型: public class DayOff { public int Id { get; set; } public List<User> Users { get; set; } public DayOff() { Users = new List<User>(); } } 公共课休息 { 公共int Id{get;se

我正在尝试更新一个简单的模型:

public class DayOff
    {
        public int Id { get; set; }

        public List<User> Users { get; set; }

        public DayOff()
        {
            Users = new List<User>();
        }
    }
公共课休息
{
公共int Id{get;set;}
公共列表用户{get;set;}
公众假期
{
用户=新列表();
}
}
我的服务层是:

public void Update(DayOff dayOff, IEnumerable<int> users)
{
    var dayOffToUpdate = _db.DayOff.Include("Users").Single(d => d.Id == dayOff.Id);
    dayOffToUpdate.Users.Clear();

    _db.Entry(dayOffToUpdate).CurrentValues.SetValues(dayOff);

    dayOffToUpdate.Users = _db.User.Where(u => users.Contains(u.Id)).ToList();

    foreach (var user in dayOffToUpdate.Users)
    {
        _db.Entry(user).State = EntityState.Modified;
    }

    _db.SaveChanges();
}
public void更新(DayOff DayOff,IEnumerable用户)
{
var dayOffToUpdate=_db.DayOff.Include(“用户”).Single(d=>d.Id==DayOff.Id);
dayoftoupdate.Users.Clear();
_db.Entry(dayOffToUpdate).CurrentValues.SetValues(dayOff);
dayoftoupdate.Users=_db.User.Where(u=>Users.Contains(u.Id)).ToList();
foreach(dayOffToUpdate.Users中的var用户)
{
_db.Entry(user.State=EntityState.Modified;
}
_db.SaveChanges();
}

但是它没有更新用户,所以我怎么能?

为什么你说“跟踪关闭”?@GertArnold当我设置AutoDetectChangesEnabled=false时;我会更改它。我假设您确保
dayoftoupdate.Users
包含元素?