툴
DB FIRST로 모델만들기
네이밍 규칙변환
- tbl 제거 , 언더바제거 , FirstLeeterUpperCase로 모델 변환
제임스의 DB를 노코딩 개발로 Import수행
Entity모델 자동생성
모델맵핑
private void CategoryBoardMapping(ModelBuilder modelBuilder) { modelBuilder.Entity<CategoryBoard>().HasNoKey(); modelBuilder.Entity<CategoryBoard>().ToView(@"tbl_Category_Board", @"dbo"); modelBuilder.Entity<CategoryBoard>().Property(x => x.CategoryID).HasColumnName(@"CategoryID").HasColumnType(@"int").ValueGeneratedNever().HasPrecision(10, 0); modelBuilder.Entity<CategoryBoard>().Property(x => x.BoardNo).HasColumnName(@"BoardNo").HasColumnType(@"bigint").ValueGeneratedNever().HasPrecision(19, 0); }
- 최초 키규칙(프라이머리/외래키)등이 적용된 코드이며~ 이후 DB가 수정되면 Sync를 맞춰줍니다.
- EntityFrameWork를 이용해 Model통해 CUD시 PrimaryKey는 필수입니다. ( 위 와같이 Key가 없을시 Entity 변경불가 ) / Read는 제약상관없이 조회는 가능
Repository
- ORM접근 레파지토리를 통해 개발에서 OOP를 이용하여 DB를 빠르게 이용 ( 사용준비끝)
- 모델은 DTO(POCO)로 정의되어 분리되어있기때문에 , Dapper나 스토어프로시저 기반으로 교체하더라도~ 모델은 그대로 재사용가능