Как организовать запросы к набору данных для повышения производительности

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

Я также не знаю, где создавать экземпляры адаптеров.

  • Должен ли я сделать это в Page_Load?
  • Должен ли я просто сделать это, когда я собираюсь использовать это?
  • Открываю ли я новое соединение, когда создаю новый экземпляр?

Это не кажется очень важным, но каждый раз, когда я создаю запрос, мой голос задает мне несколько вопросов.

18.08.2008 13:21:45
1 ОТВЕТ
РЕШЕНИЕ

Должен ли я просто сделать это, когда я собираюсь использовать это?

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

Открываю ли я новое соединение, когда создаю новый экземпляр?

Asp.net обрабатывает пул соединений , а также эффективно открывает и закрывает соединения. Вам не нужно беспокоиться об этом.

Еще одна вещь, которую следует учитывать с точки зрения производительности, - это избегать использования наборов данных и адаптеров таблиц. Во многих случаях они добавляют дополнительные издержки при извлечении данных, которых нет при использовании Linq to Sql, хранимых процедур или DataReaders.

2
18.08.2008 13:32:51