Комментарии к таблице, динамические элементы управления, C # и asp.net - PullRequest
0 голосов
/ 11 мая 2011

Представьте себе таблицу и кнопку для добавления новых строк в таблицу. При каждом нажатии кнопки новая строка будет вставляться в конец таблицы. Событие кнопки работает следующим образом:

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

  • Наконец, при каждом событии page_init я воссоздаю таблицу, используя данные внутри таблицы данных. Все отлично работает.

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

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

Класс, который я написал, состоит из 118 строк. В процессе воссоздания таблицы существует 3 вложенных цикла for / foreach, но они не такие длинные (среднее время цикла, вероятно, составляет от 5 до 10 для каждого). И наконец, как упоминалось выше, для воссоздания таблицы используется таблица данных, которая сохраняется в кеше.

Итак, я снова задаю вопрос: код работает отлично, но я хотел бы знать, является ли создание такого кода удобным для производительности?

1 Ответ

2 голосов
/ 11 мая 2011

Это полностью зависит от количества данных в таблице (количество строк / столбцов).

Если его размер мал, как, например, снесение списка из 10 пользователей и их логинов и паролей, он будетработает нормально, без проблем с производительностью.

Но если это будут тысячи и тысячи записей, вероятно, начнутся проблемы с производительностью.

Редактировать: написать скрипт для заполнениябазы данных в «худшем случае» ожидаемый объем данных, а затем посмотреть, как он работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...