Чистое решение для динамических записей таблицы строк в ASP.Net - PullRequest
0 голосов
/ 14 февраля 2012

Я работаю над проектом в ASP.Net, который использует UpdatePanel для обработки всех запросов AJAX. Я гораздо лучше знаком с использованием методов и стратегий jQuery AJAX, поэтому я немного озадачен поиском чистого решения для нужной мне функциональности.

В основном мне нужна таблица, которая позволяет мне динамически добавлять столько строк, сколько я хочу, используя AJAX. Эти строки будут содержать текстовые поля, значения которых должны быть сохранены ASP.Net, пока я не буду готов отправить форму. Чтобы еще больше усложнить ситуацию, в базе данных уже могут быть записи, которые должны отображаться вместе со значениями, предварительно заполненными, и любые изменения в этих полях также должны быть сохранены.

Я начал с использования GridView и установки его источника данных в список записей базы данных, но, к сожалению, я считаю, что это означает, что я не могу добавить новые строки в GridView.

Любая помощь будет принята с благодарностью. Помните, что решение должно использовать элементы управления ASP.Net.

1 Ответ

0 голосов
/ 14 февраля 2012

Мне кажется, я нашел решение, которое кажется довольно простым.

Когда страница загружается, я собираю любые соответствующие записи из базы данных и выполняю выражение запроса в сочетании с выбором проекции для создания массива анонимного типа.Когда вместо добавления новой строки или извлечения потенциально старых данных из базы данных нажата кнопка добавления новой строки, я выполняю выражение запроса для самих элементов сетки данных и объединяю новый пустой элемент.Отсюда достаточно просто установить источник данных сетки данных, активировать привязку данных и обновить панель обновлений.

Теперь остается только вопрос, как определить строки, особенно новые строки, у которых еще нет ключей базы данных.Я мог бы придумать какой-нибудь умный метод для генерации идентификаторов строк, но у меня есть ощущение, что ASP.Net уже делает это, и все, что мне нужно сделать, это связать эти идентификаторы с анонимными типами.

...