В коде вам не нужно открывать и закрывать соединения. Однако IMO, LinqDataContext, должен рассматриваться как ресурс, такой как SqlConnection или SqlCommand, и должен быть частью блока using, чтобы вы могли его использовать, когда он не используется. Хотя я читал в MSDN, что это не обязательно, но это хорошая практика.