문제

엔터티 데이터 모델에서 데이터베이스를 어떻게 생성합니까?

그래서 VisualStudio 2008에서 EDM Designer를 사용하여 데이터베이스를 만들었고 이제 SQL Server 스키마를 생성하여 SQL Server에 저장소를 생성하려고 합니다.

도움이 되었습니까?

해결책

내가 이해한 바에 따르면 EDM을 단지 "멋진" 데이터베이스 디자이너로 사용해서는 안 됩니다. 사실 EDM은 특정 스토리지 계층에 의존하지 않습니다.개발자를 위해 해당 부분을 추상화하려고 합니다.디자인 스키마(CSDL)와 스토리지 스키마(SSDL)가 있습니다.어쨌든, 당신에게 강의할 생각은 없습니다.;)

있다 EDM 생성기, 모델 및 클래스 등을 만드는 데 사용됩니다.DDL 종류의 내보내기의 경우에는 그런 일을 해본 적이 없지만 EDM을 기존 데이터베이스에 매핑한 것뿐이어서 시작하기가 더 쉬웠습니다.

MSDN에는 기존 데이터베이스를 사용하는 방법에 대한 단계별 지침을 자세히 설명하고 처음부터 시작하는 방법도 다루는 훌륭한 자습서가 있습니다.

http://msdn.microsoft.com/en-us/magazine/cc163286.aspx

다른 팁

"모델에서 데이터베이스 스키마 생성" 기능은 Entity Framework의 향후 릴리스에 예정되어 있습니다.V1은 EF 모델을 기반으로 한 스키마 생성을 지원하지 않습니다.

나는 다른 답변이 이것을 암시한다고 생각하지만 명시적으로 말하면 SSMS(또는 SQL Server 공급자를 사용하지 않고 용감한 사람이라면 동등한 것)를 사용하여 DB 레이아웃을 디자인한 다음 이를 EDM으로 빨아들인 다음 응용 프로그램을 적용합니다. 필요에 따라 모델을 변경합니다.

나는 먼저 당신의 방식대로 하려고 약 한 시간을 보냈습니다(다른 Java ORM 도구의 남은 습관). 결국 포기하고 이제는 '올바른 방식'으로 수행합니다(tm).

결국 JRoppert가 지적한 대로 모델 기능에서 데이터베이스 스키마를 생성하는 것이 좋을 것입니다. 그러면 다양한 DB 특성에 대한 DDL을 자동으로 얻을 수 있습니다.

모델에서 데이터베이스를 생성하는 것은 Entity Framework의 vNext에 계획된 기능입니다.이것을 확인해보세요 블로그 게시물 ~의 엔터티 프레임워크 디자인 모델에서 데이터베이스 생성을 위해 계획된 기능을 설명합니다.

지금 당장 해야 할 일은 1) 직접 데이터베이스를 생성하거나 2) CSDL 파일을 구문 분석하고 자체 생성기를 작성하는 것입니다.제 생각에는 1)번이 더 나은 선택일 것 같습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top