source

Entity Framework 7 데이터베이스 우선 POCO 생성기가 있습니까?

ittop 2023. 8. 20. 12:40
반응형

Entity Framework 7 데이터베이스 우선 POCO 생성기가 있습니까?

저는 Entity Framework 7과 ASP를 가지고 놀고 있습니다.제가 진행 중인 새 프로젝트의 NET 5입니다. 하지만 장애물에 부딪혔습니다.제가 일하고 있는 팀은 DBA 우선 개발 방식을 사용합니다. 즉, 데이터베이스를 DBA가 설계한 다음 개발자가 모델 변경 사항을 보완하기 위해 코드를 변경합니다.

EF6를 사용하면 EDMX 디자이너의 "업데이트" 기능을 사용하여 코드를 업데이트할 수 있기 때문에 이 기능이 잘 작동합니다.한 번의 클릭으로 새로운 수업이 시작되고, 우리는 끝입니다.그러나 EF7에서는 모든 것이 다릅니다.더 이상 디자이너는 없으며 코드퍼스트를 사용해야 합니다. EF 팀의 블로그 게시물에 따르면 "데이터베이스퍼스트" 코드 생성도 지원해야 합니다.

하지만 ASP에서 Visual Studio 2015 CTP6를 사용하여 이 작업을 수행하는 방법을 알 수 없습니다.NET 5 응용 프로그램.툴링 지원이 아직 안 됐나요, 아니면 운이 없는 건가요?그리고 그것이 오고 있는 것일까요?

최신 비트에서는 dnx 명령 프롬프트와 PowerShell 명령을 사용하여 이 작업을 수행할 수 있습니다.

Scaffold-DbContext '<connectionString>' EntityFramework.MicrosoftSqlServer

또는

dnx ef dbcontext scaffold "<connectionString>"  EntityFramework.MicrosoftSqlServer

또는 (EF Core RC2에서)

dotnet ef dbcontext scaffold "<connectionString>"  Microsoft.EntityFrameworkCore.SqlServer

설치해야 합니다.Microsoft.EntityFrameworkCore.Tools명령이 작동하기 위한 패키지입니다.

이 작업은 NuGet 패키지 관리자 콘솔 또는 명령 프롬프트를 사용하여 수행할 수 있습니다.명령 프롬프트로 시도했습니다.명령 프롬프트에서 프로젝트 폴더로 이동한 후 다음과 같은 명령을 사용했습니다.

dnx ef dbcontext scaffold "Data Source=myServerName; Initial Catalog=myDatabaseName; Integrated Security=True" EntityFramework.SqlServer

누락된 패키지에 대한 오류가 발생했습니다.

엔티티 프레임워크입니다.명령

엔티티 프레임워크입니다.SqlServer.설계.

계속하기 전에 다음 명령을 따릅니다.

dnu restore

실제 필요한 패키지는 project.json 파일에 언급된 프레임워크에 따라 달라질 수 있습니다.

명령 프롬프트에서 dnx 또는 기타 관련 명령을 실행할 수 없는 경우 다른 답변의 주석에 언급된 이 링크를 따르십시오.

추신: [작성 당시, 마지막으로 업데이트된 8월 21일] 현재 명령 목록입니다.

ASP.NET - 엔티티 프레임워크 Wiki -- NuGet/DNX 명령

의 RC2에 대한 업데이트된 매개 변수는 다음과 같습니다.NET Core (2016년 5월)

dotnet ef dbcontext scaffold -c RRStoreContext -o Model 
"Data Source=(local);Initial Catalog=DBNAME;Integrated Security=True"     
Microsoft.EntityFrameworkCore.SqlServer --force

참고:Microsoft.EntityFrameworkCore.SqlServer명령에 사용해야 하는 패키지의 새 이름입니다.추가했습니다.force기존 파일을 덮어쓸 매개 변수입니다. 변수는 'o'는 출력 디렉터리 이름입니다.리고지금은그지▁and.dotnetdnx.

로 하는 은 현재릴기고필종입니다.project.json.

"dependencies": {
    "Microsoft.EntityFrameworkCore": "1.0.0-rc2-final",
    "Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.0-rc2-final",
    "Microsoft.EntityFrameworkCore.Tools": {
      "type": "build",
      "version": "1.0.0-preview1-final"
    }
  },

참고: 'build' 유형은 이 DLL이 툴링에만 필요하기 때문에 어셈블리를 참조하는 모든 DLL이 종속성으로 간주되지 않음을 의미합니다.

@ErikEJ는 이를 위한 매우 유용한 도구를 개발했습니다.프로젝트를 마우스 오른쪽 버튼으로 클릭하는 것만으로 POCO 클래스를 생성하고 SQL 서버 인스턴스를 제공합니다.여기에서 다운로드할 수 있으며 단계가 여기에 명시되어 있습니다.

언급URL : https://stackoverflow.com/questions/29300777/is-there-an-entity-framework-7-database-first-poco-generator

반응형