Теперь, когда я вижу ответ Jeremy, я думаю, что не забываю слышать, что лучшая практика должна использовать новый DataContext для каждой операции данных. Rob Conery записал несколько сообщений о DataContext и нем всегда новости их вместо того, чтобы использовать одиночный элемент.
Вот шаблон, который мы использовали для Видео. Покажите ( ссылка на исходное представление в CodePlex):
using System.Configuration;
namespace VideoShow.Data
{
public class DataContextFactory
{
public static VideoShowDataContext DataContext()
{
return new VideoShowDataContext(ConfigurationManager.ConnectionStrings["VideoShowConnectionString"].ConnectionString);
}
public static VideoShowDataContext DataContext(string connectionString)
{
return new VideoShowDataContext(connectionString);
}
}
}
Тогда на уровне обслуживания (или еще более детализированный, для обновлений):
private VideoShowDataContext dataContext = DataContextFactory.DataContext();
public VideoSearchResult GetVideos(int pageSize, int pageNumber, string sortType)
{
var videos =
from video in DataContext.Videos
where video.StatusId == (int)VideoServices.VideoStatus.Complete
orderby video.DatePublished descending
select video;
return GetSearchResult(videos, pageSize, pageNumber);
}
Наберите Ctrl - D на клавиатуре, удаляет одну табуляцию за раз, работает для табуляции с замещением пробелом.