У меня есть приложение winform, которое использует LinqToSql в качестве DAL.Существует центральная база данных SQL, и каждый ноутбук имеет локальную базу данных SQLExpress.Отдельный модуль, использующий репликацию слиянием, синхронизирует их.Когда соединение теряется с центральной БД, оно «переключается» на локальную.Это прекрасно работает.
Однако, когда я возвращаюсь к центральной базе данных, если период времени не был очень длинным, я получаю следующее исключение ->
A transport-level error has occurred when sending the request to the server. (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host.)
Я прочитал здесь многочисленные посты на SO , относящиеся к этому и даже к этой статье MSDN , в которой подробно и подробно объясняется, что же происходит не так, через всеЯ до сих пор не нашел и не прочитал решение.
Мне интересно, как другие справились с этим.Мне трудно поверить, что я вступаю здесь на новый путь.Есть ли способ удалить мои старые соединения при переподключении?
Я теряю волосы из-за этого, поэтому любая оценка приветствуется.
РЕДАКТИРОВАТЬ
ТакжеСледует отметить, что я весьма уверен, что все мои Data Contexts
заключены в using
, и у меня нет никаких «долгосрочных» контекстов.