- Я обновляю некоторые данные на мобильном устройстве IE на странице Edit.cshtml.
- После публикации движок отправляет обратно файл Details.cshtml, который показывает, что данные НЕ были обновлены
- Однако, когда я проверяю с помощью другого браузера, данные были обновлены.
Для меня это больше похоже на проблему кэширования в браузере на мобильном устройстве.
Как вы делаете свое сообщение, через AJAX или просто с помощью <input type="submit".. />
Хммм
При публикации на сервере возникает исключение DbConcurrency, котороезатем обрабатывается (обновляя контекст).Это возвращает страницу редактирования еще раз.
Означает ли это, что ваш контекст все еще жив из предыдущего поста назад?
Нашел это на MSDN
Исключение, создаваемое DbContext, когда ожидаемое поведение заключается в том, что SaveChanges для объекта приведет к обновлению базы данных, но на самом деле ни одна строка в базе данных не была затронута.Обычно это указывает на то, что база данных была одновременно обновлена и токен параллелизма, который, как ожидали, совпадал, фактически не совпадал.Записи состояния, на которые ссылается это исключение, не сериализуются из-за безопасности, и доступ к записям состояния после сериализации вернет ноль.
Что может быть истолковано как то, что второе опубликованное сообщение на самом деле не выполняет обновление,или моя интерпретация неверна?
Я все еще думаю о кешировании, OutputCaching
может иногда вызывать эту проблему в моем опыте, но я думаю, что это повлияет на все браузеры, хотя и не уверен.