Хорошо, вот моя базовая настройка страницы ASP.NET: у меня есть страница с GridView, в которой есть ContentTemplates.Вы можете добавить строку и редактировать / удалять строки в любое время.Там есть кнопка «Создать», которая создает новую строку.
Все эти данные привязаны к объектам пользовательских данных.Поэтому, если у меня есть GridView «People» и в каждой строке есть «FirstName», «LastName» и «Gender» (с элементами управления TextBox и DropDown), у меня будет объект «Person», который имеет открытые свойства для «FirstName», «LastName» и т. Д. У меня правильно установлена привязка, и я могу передать данные в объект GridView из объекта и сохранить объект с помощью переменной Session.Структура времени жизни моей страницы выглядит примерно так:
Page_Load
: загружает List(Of Person)
из Session()
- Все события запускаются и изменяются
List(Of Person)
. - После любого события
List(Of Person)
сохраняется обратно в Session()
и затем связывается с DataBound для GridView (а все последующие поля также являются DataBound, например DropDownList.
Мой вопрос: всякий раз, когда я заполняю строки в GridView, а затем добавляю новую строку (при этом сохранение базы данных не происходит вообще), мои поля очищаются и не сохраняются в PostBacks. Итак, как я могу сохранить свой пользовательскийобъекты данных с привязкой данных между постбэками?