2011-06-11 7 views
17

System.Data.EntityDataBase이 없습니다.System.Data.Entity.DataBase를 찾을 수 없습니다.

이유를 아는 사람이 있습니까?

감사합니다.

+0

btw 답변을 수락 하시겠습니까? –

+0

대답을 수락 하시겠습니까? :) –

+2

당신이 틀린 대답을 받아 들였습니다. 나는 그것을 여기에서 밀고있는 것을 안다. 그러나 나는 처음에 대답했다 (23 6 월 29 일). –

답변

21

System.Data.Entity.Database을 가져올 필요가 없습니다. System.Data.Entity이면 충분합니다. DbDatabase.SetInitializer 대신 Database.SetInitializer을 사용하십시오. 당신이 그것을 놓친 경우

이 클래스는 "DB"

8

Database 클래스가 선언 된 EntityFramework.dll 어셈블리를 참조해야합니다. 해당 NuGet package에서 설치할 수 있습니다.

+0

EntityFramework에 대한 참조가 내 프로젝트에 추가되었지만 System.Data.Entity, System.Data.Entity에서 DataBase를 찾을 수 없습니다. 그러나 DataBase는 없습니다. – fligant

+0

@fligant, 왜냐하면 클래스가'DataBase'가 아니라'Database'라고하기 때문입니다. 차이점에 주목 하시겠습니까? –

+0

System.Data.Entity.Database 해당 네임 스페이스가 클래스가 아니며 DbDatabase.SetInitializer를 사용할 수 있습니다. – fligant

3

내가 같은 문제가없이 데이터베이스라고합니다. Daz와 Darin의 대답은 나에게 단서를 알려주었습니다.

CTP에서 네임 스페이스가 System.Data.Entity.Database 인 클래스 이름은 "DbDatabase"입니다.

그러나 EF 4.1 버전에서 클래스는 "데이터베이스"라고하며 System.Data.Entity에 있습니다. System.Data.Entity.Database 네임 스페이스는 적어도 EF4.1에서 사라졌습니다.

1

엔터프라이즈 라이브러리 4 CTP5에서 엔터프라이즈 라이브러리 4.1으로 업그레이드 한 것 같습니다.

네임 스페이스가 조금 변경되어 이제 다른 네임 스페이스에서 필요한 클래스를 찾을 수 있습니다. 여기 Kasper Skov의 답변에서 볼 수 있듯이 DbDatabase 클래스는 System.Data.Entity이며 Database으로 이름이 변경되었습니다.

아직 IConfigurationConvention가로 이동 한 곳을 찾지 못했습니다. System.Data.Entity.ModelConfiguration.Conventions.Configuration은 존재하지 않는 또 다른 네임 스페이스입니다.

0

내 버전에서 Entity Framework 4.1.10715.0 ', System.Data.Entity.Database은 클래스가 아니며 네임 스페이스입니다. DbDatabase은 해당 네임 스페이스의 클래스이며 SeInitializer 메서드를 포함합니다. 내가 읽은 모든 것이 이것을 모순이되었을 때 찾을 수있는 PITA.

스티븐 샌더슨 데모로 데이터베이스를 리메이크하려면 다음을 사용해야했습니다.

System.Data.Entity.Database.DbDatabase.SetInitializer(
    new System.Data.Entity.Database.DropCreateDatabaseIfModelChanges<Mvc3ScaffoldDemo.Models.Mvc3ScaffoldDemoContext>()); 
+0

@Bill mine은 엔티티 프레임 워크 4.1.10715입니다.0, nuget ....에 의해 설치된 System.Data.Entity.Database는 클래스가 아니라 네임 스페이스가 아니며 DbDatabase ....... – dfang

0

그냥 바로 솔루션을 클릭하고 "NuGet 패키지 관리"와 "EntityFramework"로 검색 선택하는 것이 어떻게 당신의 엔티티 프레임 워크를 업데이트합니다. 최신 버전 (6.1.3 또는)을 설치하거나 "NuGet 패키지 콘솔"을 사용하십시오. enter image description here