The error comes from how you initialize the data context db
.
The user object has been created in a separate db
, so, when you are trying to update user
, the current db doesn't know about this user
object.
You could solve it by getting a user
try
{
// or check on FirstName and LastName if you don't have a user id
var updatedUser = db.Users.SingleOrDefault(x => x.id == id);
updatedUser.FirstName = user.FirstName;
updatedUser.LastName = user.LastName;
db.Entry(updatedUser).State = EntityState.Modified;
db.SaveChanges();
}
Alternatively, you could make sure that the data context you are using to create the user
object is the same as the one that is trying to update the user.
Does this make sense to you?