Quando você estiver utilizando EF e tentar atualizar um objeto que não foi criado do banco, com um post do mvc por exemplo, com Attach e SaveChanges você recebe a mensagem de erro
“An object with a null EntityKey value cannot be attached to an object context” , para contornar isso você pode utilizar o método
context.AttachTo("Cargos", DadosCargo); context.ObjectStateManager.ChangeObjectState(DadosCargo, EntityState.Modified); context.SaveChanges();