2011-12-22 2 views
1

Entity Framework를 처음 사용하기 때문에 질문이 기본적인 것처럼 보이는 경우 용서해주십시오. Entity Framework에서 만든 컨텍스트 개체를 응용 프로그램에서 사용하는 것이 더 좋습니까? 아니면 데이터베이스에 액세스/수정하려고 할 때마다 새 컨텍스트 개체를 만들어야합니까?Entity Framework에서 컨텍스트 개체를 저장해야합니까?

컨텍스트 개체를 너무 자주 만들면 성능 문제로 인해 질문을 다르게 공식화 할 수 있습니까? 또는 응용 프로그램의 수명 기간 동안 컨텍스트 개체를 유지하면 데이터베이스 문제 (예 : 데이터베이스 잠그기)가 발생합니까?

답변

4

EF 및 Linq2SQL 컨텍스트는 모두 짧은 수명을 위해 설계되었습니다. 웹 페이지를 제공하는 경우 일반적으로 HTTP 요청 당 하나의 컨텍스트를 사용하는 것이 가장 좋습니다.

하지만 다른 ORM에도 적용됩니다. 모두 일종의 캐싱을 사용하고 컨텍스트가 너무 오래 있거나 요청간에 공유되는 경우 이상한 버그가 발생할 수있는 개체 변경 내용 추적이 있습니다.

편집 : 두꺼운 클라이언트 앱을 작성하는 경우 상황이 달라질 수 있습니다.

+0

정보 주셔서 감사합니다. :-) – Rafid

관련 문제