EF4 Code First:如何仅更新特定字段

如何仅更新实体上的某些字段?

我有一个像这样的用户实体:

public class User { public string UserId { get; set; } public string PasswordHash { get; set; } public bool IsDisabled { get; set; } public DateTime AccessExpiryDate { get; set; } public bool MustChangePassword { get; set; } public DateTime DateCreated { get; set; } public DateTime LastActivity { get; set; } } 

因此,例如,如果我想更新用户实体,但又不想更改用户密码,我该怎么做?

目前,我正在使用以下代码更新实体:

 using (var _cnt = new STQContext()) { _cnt.Entry(item).State = System.Data.EntityState.Modified; _cnt.SaveChanges(); return; } 

试试这个:

 using (var _cnt = new STQContext()) { _cnt.Users.Attach(user); _cnt.Entry(user).Property(u => u.PasswordHash).IsModified = true; _cnt.SaveChanges(); }