¿Cómo puedo actualizar una entidad sin tener que hacer una llamada para seleccionarla? Si proporciono la clave para la entidad, no debería saber si desea actualizar después de invocar a SaveChanges() en ObjectContext.EF4 Entidad de actualización sin primera obtención de la entidad
Actualmente hago esto:
var user = context.Users.Single(u => u.Id == 2);
user.Username = "user.name";
user.Name = "ABC 123";
context.SaveChanges();
que funciona, pero obliga a una selección. Porque sé el Id
, por qué no puedo hacer algo como esto:
var user = new User();
user.Id = 2;
user.Username = "user.name";
user.Name = "ABC 123";
context.UpdateObject(user);
context.SaveChanges();
Gracias de antemano.
EDIT: Además, es importante que sólo las propiedades afectadas que se cambian ser actualizados. es posible?
Eso realmente no * actualiza * el objeto en la base de datos. Sin embargo, lo agrega a la lista de usuarios. – TheCloudlessSky
Llamar 'context.ObjectStateManager.GetObjectStateEntry (usuario) .ChangeState (EntityState.Modified);' realiza la actualización ... – TheCloudlessSky
¿Cambia la propiedad Name después de "context.Users.Attach (user);"? – user386740