이 생성기는 데이터베이스를 리버스 엔지니어링 한 전문가와 같은 코드를 생성하고 귀하를위한 코드를 생성합니다. 아주.
리버스 엔지니어링 기존 데이터베이스를 작성하고 엔티티 프레임 워크 코드 첫 번째 POCO 클래스, 구성 매핑, 열거, DBContext, FakedBContext (쉬운 단위 테스트) 및 저장 프로 시저 및 테이블 값 기능을 생성합니다.
완전히 사용자 정의 할 수있는 아름답게 생성 된 코드 첫 번째 코드
이것은 Microsoft Reverse Generator가 아닙니다. 이 생성기는 마치 데이터베이스를 리버스 엔지니어링하고 사랑스럽게 코드를 직접 만든 것처럼 코드를 작성합니다. 또한 생성 된 코드를 원하는대로 사용자 정의 할 수 있습니다.
이 프로젝트를 좋아하거나 사용하고 있다면 스타를 제공하십시오. 감사해요!
상업용 용도로는 무료가 아닌 아카데믹 (.edu, .ac 또는 .sch 이메일 주소가 필요합니다).
라이센스 키는 Reversepoco 웹 사이트를 방문하십시오.
업그레이드 문서를 읽으십시오
이 릴리스에서 새로운 것을 보려면 여기를 클릭하십시오.
이 생성기는 처음부터 사용자 정의 할 수 있도록 설계되었으며 다른 발전기와 같이 고정되고 강력하지 않습니다. <database>.tt 파일의 설정을 사용하십시오. 그것이 바로 거기에 있습니다.
데이터베이스가 변경되면 <database>.tt 파일을 다시 확인하십시오. 그게 다야.
전체 기능 목록을 보려면 여기를 클릭하십시오.
Nuget을 사용하고 데이터베이스의 관련 Nuget 패키지를 설치하십시오.
install-package Microsoft.EntityFrameworkCore.SqlServerinstall-package EntityFramework Settings.ConnectionString 은 v3에서 필수이므로 app.config/web.config/appsettings.json 파일에서 연결 문자열을 제공해야합니다. 생성기는이 연결 문자열을 사용하여 데이터베이스를 리버스 엔지니어링합니다. 더 이상 *.config 파일에서 연결 문자열을 읽지 않습니다.
예를 들어:
settings.connectionstring = "data source = (로컬); 초기 카탈로그 = Northwind; 통합 보안 = true; encrypt = false; trustserVercertificate = true";
Settings.ConnectionString 문자열에는 ddladmin , datareader 및 datawriter 와 같은 특권이 있어야합니다. 기본 제약 조건을 읽으려면 ddladmin 이 필요합니다.
Visual Studio에서 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 "추가 - 새 항목"을 선택하십시오.
온라인으로 선택하고 리버스 POCO 를 검색하십시오.
EntityFramework Reverse Poco 생성기를 선택하십시오.
Database.tt 와 같은 이름을 파일에 제공하고 추가를 클릭하십시오.
Database.tt 파일을 편집하고 Settings.ConnectionString 에서 전체 연결 문자열을 지정하십시오. 속도는이를 사용하여 데이터베이스 스키마를 읽고 리버스 엔지니어링합니다.
Database.tt 파일을 편집하고 Settings.ConnectionStringName appsettings.json , app.config 또는 web.config 에 지정된 ConnectionString 키와 일치하는 ConnectionStringName에서 연결 문자열을 지정하십시오.
Database.tt 파일을 저장하면 이제 Database.cs 파일이 생성됩니다. Database.tt 파일을 저장할 때마다 생성기는 데이터베이스를 리버스 엔지니어링합니다.
생성 된 코드를 사용자 정의하는 데 사용할 수있는 많은 옵션이 있습니다. 이러한 모든 설정은 Database.tt 파일에 있습니다.
Settings.ConnectionString 은 버전 3에서 필수입니다. 생성기는이를 사용하여 데이터베이스 스키마를 읽습니다. 연결 문자열은 선택적으로 onconfiguring 함수에 배치됩니다.
protected override void OnConfiguring ( DbContextOptionsBuilder optionsBuilder ) { { #n ewline } }
{ { { #n ewline } }
if ( ! optionsBuilder . IsConfigured ) { { #n ewline } }
{ { { #n ewline } }
optionsBuilder . UseSqlServer ( @"" { { ConnectionString } } "" ) ; { { #newline } }
} { { #n ewline } }
} { { #n ewline } } { { #n ewline } } Settings.ConnectionStringName 생성기에서 사용하지 않지만 Settings.DefaultConstructorArgument 로의 호출을 통해 생성 된 dbContext 생성기에 배치됩니다.
public { { DbContextName } } ( ) { { #n ewline } }
{ { #if HasDefaultConstructorArgument } }
: base ( { { DefaultConstructorArgument } } ) { { #n ewline } }
{ { / if } }Github에서는 발전기의 간단한 UI를 사용할 수 있으므로 테이블을 필터링하기 위해 Regex를 만들 수 있습니다.
TT 파일을 편집 할 때 전체 구문 강조 표시 및 Intellisense를 사용하려면 Resharper 플러그인 Fortea를 사용합니다. TT 파일이 없으면 편집하는 것을 상상할 수 없습니다.
이 파일이 C# 프로젝트에서 생성되므로 EF.Reverse.POCO.v3.ttinclude 파일을 편집 할 필요가 없습니다. 이 저장소에는 Generator C# 프로젝트에서 EF.Reverse.POCO.v3.ttinclude 를 생성하는 buildtt 파일이 포함되어 있습니다.
[https://github.com/blog/1943-how-to-write-the-perfect-pull-request]을 읽으십시오. 완벽한 풀 요청을 작성하는 방법).
내 요구 사항은 간단합니다.
EF.Reverse.POCO.v3.ttinclude 파일이 생성됩니다. 이 저장소에는 Generator C# 프로젝트에서 EF.Reverse.POCO.v3.ttinclude 를 생성하는 BuildTT 프로젝트가 포함되어 있습니다.안부, Simon Hughes