1
글쎄, 나는 언제, 어떻게 데이터 컨텍스트를 처분할지 모른다. 내가 잘못 아니에요 경우 모두가 잘 가면, 데이터 컨텍스트가 배치되고,이 경우try/catch를 dataContext와 함께 사용할 위치는 어디입니까? (Dispose)
try
{
using(MyEntities myDbContext = new MyEntities())
{
//My code that get entities from data base and work with them
}
}
catch
{
throw;
}
예를 들어,이 코드가 있습니다. 그러나 내 코드가 잘못되어 예외가 발생하면 데이터 컨텍스트가 삭제됩니까? 이러한 이유로
, 나는 다른 옵션을 생각하고 :using(MyEntities myDbContext = new MyEntities())
{
try
{
//My code
}
catch
{
myDbContext.Dispose;
throw;
}
}
을이 경우에, 나는 내가 그 배치되는 생각, 캐치에 dbcontext을 dipose. 그러나 이것이 좋은 해결책인지 또는 다른 옵션이 있는지 나는 모른다.
dbContext 및 무료 리소스 (주로 데이터베이스 연결)를 사용하여 예외를 처리하는 가장 좋은 방법은 무엇입니까?
감사합니다.
각 리소스 (컨텍스트, 연결 등)를'사용 중 '으로 그냥 감싸 주면됩니다. '.Dispose'를 호출하지 마십시오. 'try' /'catch'를 추가하지 마십시오. –
'사용하기 '를 사용한다면 걱정할 것이 없습니다. 그것은 처분 될 것입니다 100 % –
이 도움이 될 수 있습니다 - http://stackoverflow.com/questions/8309877/if-an-exception-happens-within-a-using-statement-does-the-object-still- – aw04