В Linq to SQL, как вы предотвращаете перекомпиляцию скомпилированных запросов
Я использую скомпилированные запросы. Как и ожидалось, они тратят дополнительное время на компиляцию в первый раз, однако я также заметил, что они перекомпилируются после того, как не были вызваны в течение приблизительно 30 минут.
Можно ли контролировать, когда запросы перекомпилируются, или вообще запретить их перекомпиляцию?
К сведению: пример разницы в производительности, которую я замечаю, состоит в том, что один из моих запросов занимает 6 секунд при некомпиляции по сравнению с менее чем 10 секундами при компиляции, поэтому будет иметь огромное значение, если я смогу контролировать или предотвращать перекомпиляцию запросов.
Любая помощь будет принята с благодарностью.
1 ответ
Если вы не используете скомпилированный запрос и пишете свой запрос с использованием linq, то при первом выполнении запроса на Sql Engine будет создан план выполнения, а затем сервер SQL с использованием этого плана выполнения