Le dictionnaire de paramètres contient une entrée null pour le paramètre 'id' du type non-nullable 'System.Int32'

Je fais construire Ma première application MVC, j'ai une table dans la base de données contenant 3 colonnes:

  1. Id → clé primaire
  2. Nom d'utilisateur
  3. mot de passe

Quand je suis en cliquant sur le lien modifier modifier un enregistrement, son lancement exception suivante:

Le dictionnaire de paramètres contient une valeur null pour le paramètre " id "de la non-type nullable "Système".Int32 "pour la méthode" du Système.Web.Mvc.ActionResult Modifier(Int32)' dans 'MvcApplication1.Les contrôleurs.UserController'. Un paramètre facultatif doit être un type de référence, un type nullable, ou être déclaré comme un paramètre facultatif.
Nom du paramètre: paramètres

Voici mon code de modification:

public ActionResult Edit(int id, User collection)
{
    UserDBMLDataContext db = new UserDBMLDataContext();
    var q = from abc in db.User_Login_Details
            where abc.Id == id
            select abc;

    IList lst = q.ToList();

    User_Login_Details userLook = (User_Login_Details)lst[0];

    userLook.Username = collection.UserName;
    userLook.Password = collection.Password;
    db.SubmitChanges();
    return RedirectToAction("Index");                  
}

source d'informationauteur