我有一个模型,用于修改用户的密码并捕获密码更改的日期。我收到一个错误,说属性或索引器匿名类型无法分配给它是只读的我在密码和CreateDate这两个字段都收到了错误。我只知道从实体中选择多个字段的一种方法,这就是它..
var old= db.registration.Where(b => b.email == getid.email).Select
(s => new { s.password, s.CreateDate }).FirstOrDefault();
old.CreateDate = DateTime.Now();
old.password = new.password;
db.Entry(old).State = EntityState.Modified;
db.SaveChanges();
有没有办法可以在不收到错误消息或解决方法的情况下分配这些新值?
答案 0 :(得分:0)
只需选择默认对象并随之运行
var old= db.registration.Where(b => b.email == getid.email).FirstOrDefault();
old.CreateDate = DateTime.Now();
old.password = new.password;
db.Entry(old).State = EntityState.Modified;
db.SaveChanges();
您收到的错误消息很可能是因为您正在分配匿名类型的索引,即
s => new { s.password, s.CreateDate }
是匿名的,其索引属性不能分配给