J'ai une page d'édition que je veux utiliser pour permettre la modification des détails de l'utilisateur. Lorsque je mets à jour certains détails de l'utilisateur et les publie sur ma machine de développement, cela fonctionne comme prévu, les détails sont sauvegardés dans la BD et je suis redirigé vers la page des détails qui affiche les informations mises à jour.ASP.NET MVC - Post fonctionne sur la machine de développement, mais pas en direct
Lorsque je publie le site sur le serveur en ligne et que j'effectue les mêmes actions, il ne s'éloigne pas fondamentalement de la page d'édition. La seule fois que la page publiera et redirigera avec succès est si aucun des détails n'est modifié à partir des valeurs d'origine.
Voici le code pour l'affichage:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(int id, FormCollection formValues)
{
var repo = new UserRepository();
var user = repo.GetById(id);
try
{
double value;
foreach(var stat in user.Stats)
{
var rawValue = formValues[stat.Name];
if (Double.TryParse(rawValue, out value))
{
stat.Value = value;
}
else
{
ModelState.AddModelError(stat.Name+"Err", "Value must be numerical.");
}
}
UpdateModel(user);
if (ModelState.IsValid)
{
repo.Save();
return RedirectToAction("details", new { id = user.ID });
}
else
throw new InvalidOperationException();
}
catch
{
foreach (var issue in user.GetRuleViolations())
{
ModelState.AddModelError(issue.PropertyName, issue.ErrorMessage);
}
return View(user);
}
}
Je suis sur Windows Server 2003 + IIS 6.0
Est-ce publié sur un serveur hébergé, ou un serveur sur lequel vous avez un contrôle total? Avez-vous accès aux journaux système? – Jay
@Jay, j'ai le plein contrôle du serveur. Quels journaux dois-je vérifier? – James