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

StackOverflow https://stackoverflow.com/questions/14570

  •  08-06-2019
  •  | 
  •  

Вопрос

Я не знаю, когда добавлять в набор данных tableadapter или запрос из toolbox.Имеет ли это какое-то значение?

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

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

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

Это было полезно?

Решение

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

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

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top