Dzień dobry
Zwracam się z prośbą o pomoc. Po aktualizacji do wersji 2018.2 program zgłasza błędy związane z obsługą callbacków. Zdarza się to w różnych miejscach oraz bardzo przypadkowo i jedynym rozwiązaniem jest ponowne uruchomienie aplikacji. Są dni, że nic się nie dzieje ale są również takie, gdy problem pojawia się bardzo często. Zaktualizowałem Frameworka do wersji 4.7.2 na każdej stacji roboczej ale problem nie ustąpił. Przekompilowałem wszystkie callbacki ale również bez zmian. Do wersji 2017.2 taka sytuacja nigdy się nie zdarzyła. Proszę o podpowiedź co jeszcze mogę zrobić, gdzie szukać przyczyny ?
Pozdrawiam
Paweł Nowak
Błąd obsługi callback
Moderator: mikey
- viesiek1
- Posty: 416
- Rejestracja: 03 maja 2011, 18:40
- Rola: Administrator CDN XL
- Wersja: 2023
- Lokalizacja: Bielsko-Biała
- Kontakt:
Re: Błąd obsługi callback
Z komunikatu wynika, że masz nie zamknięte połączenie z bazą. Aby tego uniknąć można użyć poniższej konstrukcji, która zapewnia to, że otwarte połączenie będzie zawsze na koniec zamykane:
Kod: Zaznacz cały
using (SqlCommand lCommand = new SqlCommand())
{
try
{
lCommand.Connection = Runtime.ActiveRuntime.Repository.Connection;
if (lCommand.Connection.State != ConnectionState.Open)
lCommand.Connection.Open();
lCommand.CommandText = lSb.ToString();
lCommand.CommandTimeout = 600;
using (SqlDataReader lReader = lCommand.ExecuteReader())
{
try
{
if (lReader.HasRows)
{
while (lReader.Read())
{
}
}
}
finally
{
if (!lReader.IsClosed)
lReader.Close();
}
}
}
finally
{
if (lCommand.Connection.State != ConnectionState.Closed)
lCommand.Connection.Close();
}
}
Wiesław Świergała
tel: +48 33 829 54 50
e-mail: wieslaw.swiergala@hydro.com.pl
http://www.hydro.com.pl
tel: +48 33 829 54 50
e-mail: wieslaw.swiergala@hydro.com.pl
http://www.hydro.com.pl
Re: Błąd obsługi callback
Dzień dobry
Oczywiście dziękuję za odpowiedź. Teraz przerabiam wszystkie dodatki, dodając instrukcję using wszędzie, gdzie mam połączenie z SQL.
Pozdrawiam
Paweł Nowak
Oczywiście dziękuję za odpowiedź. Teraz przerabiam wszystkie dodatki, dodając instrukcję using wszędzie, gdzie mam połączenie z SQL.
Pozdrawiam
Paweł Nowak