4
A
답변
13
new SqlConnection(connectionString)
은 제공된 연결 문자열에 대해 SqlConnection
인스턴스를 새로 만듭니다.
SqlConnection cn = ...
는 구성 접속 대상물을 보유합니다 (using
문 범위) 새로운 로컬 변수 cn
에 할당.
using(...)
는 using
문 - 그것은 연결 예외
(Dispose()
수단은, 풀 등으로 해제/닫을이 경우에) 발생하더라도 끝에 Dispose()
-d되는 것을 보장 전체 코드는 기본적으로입니다 :
{ // this { } scope is to limit the "cn"
SqlConnection cn = new SqlConnection(connectionString);
try { // the body of the using block
...
} finally { // dispose if not null
if(cn != null) { cn.Dispose(); }
}
}
2
은도록 SqlConnection가 "사용"범위
4
가 더 이상 필요하지 않을 것 후에 그것은 SqlConnection
을 처분 끝에 파괴 확인합니다. 이 경우 SqlConnection
에 관리되지 않는 리소스가 남아있을 수 있으므로이를 정리해야합니다. SqlConnection
은 IDisposable
을 구현합니다. 즉, 작업을 마친 후에 Dispose
을 호출 할 수 있습니다.
그것은 기본적를위한 속기이다 :
try {
SqlConnection cn = new SqlConnection(connectionString);
// whatever other code
}
finally {
if (cn != null)
{
cn.Dispose();
}
}
당신이 using
이 cn
의 범위는 외부 try
(finally
에)도 확장 사용
자세한 내용은이 항목과 관련하여 MSDN's article을 확인하십시오.
1
using 문은 IDisposable
인터페이스를 구현하는 개체에 적용 할 수 있습니다. 범위의 끝에서 Dispose가 개체에서 호출됩니다.
1
0
이렇게하면 제어가() {..} 절을 사용하여 종료 될 때 연결이 해제됩니다.
예외는 기능 복귀, 루프 중단, goto 또는 정상 범위 이탈로 인해 발생할 수 있습니다. 매우 편리합니다.
관련 문제
- 1. 이 코드는 어떤 기능을합니까?
- 2. 이 코드는 어떤 기능을합니까?
- 3. 이 코드는 어떤 기능을합니까? php에서 재귀 적 반복자?
- 4. 이 Java 주석은 어떤 기능을합니까?
- 5. 이 vimscript는 어떤 기능을합니까? 여기
- 6. 이 perl 스크립트는 어떤 기능을합니까? 까다로워 보인다.
- 7. 이 ORM kohana3 쿼리는 어떤 기능을합니까?
- 8. Win32_AllocatedResource 함수는 어떤 기능을합니까?
- 9. AVEncoderAudioQualityKey는 어떤 기능을합니까?
- 10. 이 코드는 어떤 용도로 사용됩니까?
- 11. 포틀릿 브리지는 어떤 기능을합니까?
- 12. Ext는 어떤 기능을합니까?
- 13. -all_load 링커 플래그는 어떤 기능을합니까?
- 14. 장고 관리자의 순서는 어떤 기능을합니까?
- 15. Eclipse에서 다양한 Android보기는 어떤 기능을합니까?
- 16. 이 CSS 수정 프로그램은 iE7.css 파일에서 어떤 기능을합니까?
- 17. 이 코드는 어떤 역할을합니까? (메모리 관리)
- 18. 이 코드는 그림 클래스에 어떤 기능을 수행합니까?
- 19. drupal 코멘트 모듈에서 theme_comment_thread_expanded 함수는 어떤 기능을합니까?
- 20. 이 코드는
- 21. Java Node normalize 메소드는 어떤 기능을합니까?
- 22. 자동 테스트 자동 업데이트 모듈은 어떤 기능을합니까?
- 23. @title 배치 스크립트 명령은 어떤 기능을합니까?
- 24. 캐럿이있는이 PHP 구문은 무엇이며 어떤 기능을합니까?
- 25. 이 코드는 어디에 두어야합니까?
- 26. 이 이상한 코드는 무엇입니까?
- 27. 이 코드는 안전합니까?
- 28. 이 코드는 무엇을 의미합니까?
- 29. 이 코드는 어떻게 작동합니까?
- 30. 이 코드는 스레드로부터 안전한가요?
엄밀히 말하자면, cn의 범위는 "시도"의 바깥 쪽입니다. –
고마워, 마크. 큰 이익을 위해 편집 됨. –