Вы должны хранить контекст данных только столько времени, сколько необходимо для выполнения операции.
Причина этого в том, что он использует нечто, называемое Identity Map, так что каждый раз, когда вы выбираете, скажем, customer 1, вы получаете один и тот же объект обратно. Это означает, что он содержит много ссылок и со временем будет потреблять все больше памяти, и эти результаты будут становиться все более устаревшими.
В случае веб-приложения обычно создается одно на запрос, а класс DataContext оптимизируется для быстрого создания.