После обновления появились ошибки

Здравствуйте!!! После обновления сервера Лерс перестали работать некоторые функции framework. Выкладываю код в котором это происходит:

foreach (KeyValuePair<int,int> pairs in Config.getInstance.ID){
MeasurePoint measurePoint = serverLers.MeasurePoints.GetById(pairs.Key); //вот здесь 
MeasurePointConsumptionRecord consumption = measurePoint.Data.GetLastConsumption(); //и здесь уже ошибки появляются
lastLers = consumption.DateTime;
......
}

Ну и собственно сами эксепшены:
System.Transactions Critical: 0 : http://msdn.microsoft.com/TraceCodes/System/ActivityTracing/2004/07/Reliability/Exception/UnhandledНеобработанное исключениеLersDataMigration.exeLers.NoConnectionException, Lers.System, Version=3.0.0.0, Culture=neutral, PublicKeyToken=e7c6d6299713498cСоединение с сервером не установлено или было разорвано. в Lers.Networking.UserSession.ExecuteRequestAsync(Int32 operationId, PropertyBag requestData, Int32 timeOut, AsyncOperationCallback callback, Object userState, ISynchronizeInvoke synchronizeInvoke)
в Lers.LersServer.ExecuteRequestAsyncInternal(Int32 operationId, PropertyBag requestData, Int32 timeOut, AsyncOperationCallback callback, Object userState)
в Lers.LersServer.ExecuteRequestAsyncInternal(Int32 operationId, PropertyBag requestData, AsyncOperationCallback callback, Object userState)
в Lers.Core.MeasurePointManager.GetInternal(Nullable1 id, Nullable1 number, MeasurePointInfoFlags flags, AsyncOperationCallback callback, Object userState)
в Lers.Core.MeasurePointManager.GetByIdAsync(Int32 id, MeasurePointInfoFlags flags, AsyncOperationCallback callback, Object userState)
в Lers.Core.MeasurePointManager.GetByIdAsync(Int32 id, AsyncOperationCallback callback, Object userState)
в Lers.Core.MeasurePointManager.GetById(Int32 id)
в LersDataMigration.HourData.getLastDate() в c:SharpProjectsLersDataMigrationLersDataMigrationHourData.cs:строка 26
в LersDataMigration.TimerClass.startTimer() в c:SharpProjectsLersDataMigrationLersDataMigrationTimerClass.cs:строка 27
в LersDataMigration.TimerClass…ctor() в c:SharpProjectsLersDataMigrationLersDataMigrationTimerClass.cs:строка 11
в LersDataMigration.Program.Main(String[] args) в c:SharpProjectsLersDataMigrationLersDataMigrationProgram.cs:строка 11Lers.NoConnectionException: Соединение с сервером не установлено или было разорвано.
в Lers.Networking.UserSession.ExecuteRequestAsync(Int32 operationId, PropertyBag requestData, Int32 timeOut, AsyncOperationCallback callback, Object userState, ISynchronizeInvoke synchronizeInvoke)
в Lers.LersServer.ExecuteRequestAsyncInternal(Int32 operationId, PropertyBag requestData, Int32 timeOut, AsyncOperationCallback callback, Object userState)
в Lers.LersServer.ExecuteRequestAsyncInternal(Int32 operationId, PropertyBag requestData, AsyncOperationCallback callback, Object userState)
в Lers.Core.MeasurePointManager.GetInternal(Nullable1 id, Nullable1 number, MeasurePointInfoFlags flags, AsyncOperationCallback callback, Object userState)
в Lers.Core.MeasurePointManager.GetByIdAsync(Int32 id, MeasurePointInfoFlags flags, AsyncOperationCallback callback, Object userState)
в Lers.Core.MeasurePointManager.GetByIdAsync(Int32 id, AsyncOperationCallback callback, Object userState)
в Lers.Core.MeasurePointManager.GetById(Int32 id)
в LersDataMigration.HourData.getLastDate() в c:SharpProjectsLersDataMigrationLersDataMigrationHourData.cs:строка 26
в LersDataMigration.TimerClass.startTimer() в c:SharpProjectsLersDataMigrationLersDataMigrationTimerClass.cs:строка 27
в LersDataMigration.TimerClass…ctor() в c:SharpProjectsLersDataMigrationLersDataMigrationTimerClass.cs:строка 11
в LersDataMigration.Program.Main(String[] args) в c:SharpProjectsLersDataMigrationLersDataMigrationProgram.cs:строка 11
Версия сервера 3.07 R2(Beta)
Заранее спасибо!!!

Причина ошибки есть в тексте исключения: “Lers.NoConnectionException: Соединение с сервером не установлено или было разорвано”.
Это означает, что при попытке получить точку учета, Lers Framework обнаружил, что соединение с сервером ЛЭРС УЧЕТ было утеряно или не устанавливалось вовсе.

Ваш код должен перехватывать исключение Lers.NoConnectionException и предпринимать необходимые действия, например, производить переподключение к серверу ЛЭРС УЧЕТ.

Проблема не в коннекте. Connect проходит нормально. Вот код коннекта:

Lers.LersServer serverLers = new Lers.LersServer();
			SecureString password = Lers.Networking.SecureStringHelper.ConvertToSecureString(Config.getInstance.LersPassword);
			Lers.Networking.BasicAuthenticationInfo authInfo = new Lers.Networking.BasicAuthenticationInfo(Config.getInstance.LersLogin,password);
			    
			try {
				serverLers.Connect(Config.getInstance.LersIp, 10000, authInfo);
				Console.WriteLine("Connect to Lers server!!!");
				Console.WriteLine("server version:"+serverLers.Version.ToString());
			} catch (Exception ex) {
				Console.WriteLine("Error Connecting"+ex);				
			}finally {
				serverLers.Disconnect(2000);
			}				
			return serverLers;

Все валиться, когда пытаюсь получить точку учета. В дебаггере по шагово проверил, все валиться при попытке MeasurePoint вызвать. И до обновления мой код работал.

Я так и написал выше, что исключение бросается при попытке получить точку учета.

Вот что происходит:

  1. Вы успешно подключаетесь к серверу.
  2. Соединение разрывается по какой-то причине.
  3. Вы пытаетесь получить точку учета. В этот момент происходит исключение NoConnectionException, потому что соединение потеряно.

Обработка этого исключения должна выглядеть примерно так:

try
{
server.MeasurePoints.GetById(123);
}
catch (NoConnectionException)
{
// Обрабатываем разрыв соединения
}

А в чем может быть причина? До обновления все прекрасно работало. Может изменения в фреймверке были и поэтому я не могу дернуть точку учета?

В приведенном вами выше примере кода есть вызов метода отключения от сервера сразу после подключения. Этот код не мог работать и в предыдущей версии.
Уберите эти строчки:

finally {
            serverLers.Disconnect(2000);
}

Спасибо, помогло :-):