Zależy od tego, czy wykracza poza zakres, czy nie. Jeśli tak się stanie, to i tak zostanie zamknięte, a następnie zwróci pulę połączeń (pod warunkiem, że tego nie wyłączyłeś). Tak więc wywoływanie w pobliżu niejawnie lub jawnie, jak to robisz, sprawia, że cel jest jasny i sprawia, że połączenie "natychmiast" jest dostępne do ponownego wykorzystania w puli.
Pomysł polegał na tym, aby przekonać programistów do szybkiego korzystania z bazy danych. Mnóstwo małych transakcji. Nie stary styl otwiera połączenie, a następnie ukrywa je, aby nikt inny nie mógł się do niego dostać, na wszelki wypadek, gdyby był potrzebny.
Jeśli łączenie połączeń znajduje się na klauzuli using, jest równoważne Create, open, Close. Jeśli jest wyłączona, klauzula użycia jest równoważna tworzeniu, otwieraniu, zamykaniu, usuwaniu.
W obu przypadkach prawdziwą okazją jest upewnienie się, że wykracza ona poza zakres. Poza bardzo rzadkimi okolicznościami połączenie powinno być lokalnym punktem odniesienia i mieć żywotność tego konkretnego zastosowania. Generalnie nie można utworzyć instancji w czasie wykonywania i uczynić ją właściwością mainform do intencji.
Jak trudno jest po prostu zawinąć każde połączenie za pomocą instrukcji 'using'? Zrobiłem ten nawyk i używam go wszędzie. – mellamokb
'.Zamknij' prawdopodobnie nie pozbawia połączenia, ponieważ możesz ponownie łatwo wywołać '.Open', aby ponownie otworzyć połączenie. – mellamokb
@mellamokb. Jeśli masz włączone łączenie, możesz łatwo utworzyć połączenie ponownie i dobrze. Pula nie wyrzuci go, dopóki nie będzie nieaktywna przez 2 minuty (domyślnie) –