D'une certaine manière ce code de mise à jour ne fonctionne pas:Toute raison pour laquelle cette requête de mise à jour LINQ to SQL ne fonctionne pas. .
Voici mon code contrôleur:
private UserRepository repo = new UserRepository();
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(int id, UserInfo user_)
{
try
{
repo.UpdateUser(user_);
return RedirectToAction("Index");
}
catch
{
return View();
}
}
Voici le code repo utilisé ci-dessus (UserRepository)
private UsersDataContext db = new UsersDataContext();
public void UpdateUser(UserInfo user_)
{
UserInfo origUser = GetUser(user_.Id);
origUser.First = user_.First;
origUser.Last = user_.Last;
origUser.City = user_.City;
origUser.Country = user_.Country;
origUser.State = user_.State;
origUser.Street_Address = user_.Street_Address;
db.SubmitChanges();
}
public UserInfo GetUser(int id_)
{
return db.UserInfos.SingleOrDefault(d => d.Id == id_);
}
EDIT: Notez que lors du débogage, tout fonctionne correctement (sans exception), mais quand il redirige vers Index, les données n'ont pas été mises à jour lors des modifications de la mise à jour.
Avez-vous essayé d'observer l'exception qu'il attrape? – womp
Pouvez-vous élaborer sur "ne fonctionne pas"? La méthode d'action ne se fait-elle pas virer? La méthode de base de données n'est-elle pas désactivée? Définissez-vous des points d'arrêt et vérifiez-vous le contenu de user_ s'ils le sont? – KingNestor
J'ai mis à jour le post avec ces réponses – leora