У меня есть страница редактирования, которую я хочу использовать, чтобы разрешить редактирование пользовательских данных. Когда я обновляю некоторые пользовательские данные и публикую их на своем компьютере разработчика, они работают должным образом, подробности сохраняются в БД, и я перенаправляюсь на страницу сведений, где отображается обновленная информация.
Когда я публикую сайт на работающем сервере и выполняю те же действия, он практически не выходит за пределы страницы редактирования. Единственный раз, когда страница будет успешно опубликована и перенаправлена, это если ни одна из деталей не будет изменена с исходных значений.
Вот код для публикации:
[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);
}
}
Я на Windows Server 2003 + IIS 6.0