3

600 개 이상의 테이블이있는 대규모 데이터베이스에서 Entity Framework 5를 사용하고 있습니다 (아직 저장 프로 시저와 뷰를 계산하지 않았습니다). 몇 번의 시작과 Visual Studio 2012를 사용하여 실행 한 후에는 Model.EDMX 파일을 업데이트하려고 할 때 메모리 부족 오류가 발생하거나 데이터베이스에서 업데이트를 마우스 오른쪽 단추로 클릭하여 컴파일하는 동안 오류가 발생합니다.큰 데이터베이스 (600 개 이상의 엔터티)가있는 Entity Framework를 사용할 때 메모리가 부족함

빠른 google 검색은 많은 사람들이 비슷한 문제에 직면했으며 한 포럼에있는 누군가가 여러 개의 EDMX 파일을 사용하여이를 방지 할 것을 제안했습니다. (링크 http://social.msdn.microsoft.com/Forums/en-US/adodotnetentityframework/thread/b4ce1494-a0b4-42c6-af56-4ecbfeb83e29)

내 질문은 입니다. 1)이 오류를 피하고 EF와 관련하여 많은 수의 테이블을 사용하는 방법이 있습니까? 2) 엔터 프라이즈 프레임 워크 모델이 ORM입니까? 그렇지 않다면 누군가 나에게 좋은 제안을 할 수 있습니까?

미리 감사드립니다.

+0

두 질문에 대한 답변을 원하면 별도로 게시해야합니다. – xpereta

+0

"Out of Memory"오류로 인해 업 그레 이드가 실패하면 Visual Studio 프로세스에 실제로 사용 가능한 메모리가 있습니까? 개발 기계에 충분한 메모리가 있는지 확인하십시오. 데이터베이스 개체를 업데이트하는 것만으로도 데이터베이스 개체를 추가하는 것보다 훨씬 많은 리소스가 필요할 수 있습니다. 아래 내 대답을 참조하십시오. – xpereta

+0

내 개발 랩톱에서 Visual Studio 2012 및이 샘플 응용 프로그램 이외의 다른 프로그램을 실행하고 있지 않습니다. 작업 표시 줄에는 아무런 경고가 표시되지 않습니다. –

답변

0

첫 번째 질문에 답하십시오.

Entity Framework 업데이트가 모든 경우에 안정적으로 작동하지 않는 것으로 나타났습니다.

모델의 모든 개체를 삭제하고 다시 삽입 해 보았습니까? 허용 가능한 해결 방법 일 수 있습니다.

+0

모델을 삭제하여 여러 번 시도했습니다. 몇 번 (디버깅/컴파일) 작동하고 중지됩니다. –

0

nHibernate를 살펴 보는 것이 좋습니다. Entity Framework보다 UI 측면에서 사용자 친화적이지는 않지만 많은 수의 테이블을 다루는 경우 이점이 있습니다.

http://nhforge.org/Default.aspx

또한, 당신은 당신이 당신의 엔티티 모델에서 모든 테이블을 매핑 할 필요가 없습니다 알고? 필요한 것만 가져올 수 있습니다. 네가하는 일에 600 개의 테이블이 모두 필요 없다고 가정하고있어.

관련 문제