ções de atualização do @AutoMapper no ASP.NET MVC

Isto é provavelmente bastante simples para alguns, no entanto, estou um pouco confuso e não consigo encontrar um exemplo decente. Digamos que eu esteja usando modelos de vista e minha ação POST leve esse modelo de vista. Normalmente, eu faria algo ao longo das seguintes linhas:

    [HttpPost]
    public ActionResult Update(UserViewModel uvm)
    {
        User user = Mapper.Map<UserViewModel, User>(uvm);
        _repository.Update(user);

        return RedirectToAction("Index");
    }

Embora essa não seja a imagem completa. O mapeamento funcionaria bem, no entanto, se eu apenas atualizasse o que mapeei, ele se livraria de dados valiosos no banco de dados, porque é claro que, neste caso, não estou atualizando a senha ou outros detalhe

Meu repositório se parece com isso:

    public void Update(User user)
    {
        User u = Session.QueryOver<User>().Where(x => x.UserName == user.UserName).SingleOrDefault();

        if (u == null)
            throw new Exception("User not found");

        u.Forename = user.Forename;
        u.Surname = user.Surname;
        u.EmailAddress = user.EmailAddress;
    }

[Estou usando o NHibernate, para que ele salve o objeto novamente no banco de dados assim que a sessão for fechada (após a conclusão da solicitação) automaticamente para mim.]

Então, minha pergunta é: no meu repositório devo carregar a entidade "Usuário", atualizar os valores desejados e salvá-la novamente, ou então salvá-la ou existe outro método para fazer isso? A razão pela qual pergunto é porque parece um pouco ... "manual" se você entende o que quero dizer? Talvez esteja correto, mas eu só queria ver opiniões daqueles com mais experiência nessa área.

Felicidade

questionAnswers(1)

yourAnswerToTheQuestion