[EFCore] Entity와 DB, Table 연동하기

2022. 9. 7. 17:32·공부/EFCore
728x90

 

public class ItemOption
{
    public int Str { get; set; }
    public int Dex { get; set; }
    public int Hp { get; set; }
}

public class Item
{
    public ItemOption Option { get; set; }
    // ... //
}
items[0].Option = new ItemOption() { Dex = 1, Hp = 2, Str = 3 };

 

예시 상황이다. AppDbContext에 둘 중 하나를 추가해주면 된다.

 

 

1️⃣ OwnsOne

builder.Entity<Item>()
    .OwnsOne(i => i.Option);

 

이를 추가해서 새로운 테이블을 만들면, Option_Str, Option_Dex, Option_Hp이라는 새로운 열이 추가된 것을 볼 수 있다. Item 테이블 안에 새로운 열이 생긴다.

 

 

2️⃣ ToTable

builder.Entity<Item>()
    .OwnsOne(i => i.Option)
    .ToTable("ItemOption");

 

ToTable을 추가해서 새로운 테이블을 만들면 Item 테이블과 별개로 새로운 테이블인 ItemOption이 생성된다. 이 안에 Str, Dex, Hp가 들어있는 것을 확인할 수 있다.

728x90

'공부 > EFCore' 카테고리의 다른 글

[EFCore] 다수의 Entity Class를 하나의 테이블에 매핑하기  (0) 2022.09.08
[EFCore] 상속 관계를 매핑해보자 : Table Per Hierarchy (THP) 만들기  (0) 2022.09.08
[EFCore] Shadow Property와 Backing Field  (0) 2022.09.07
[EFCore] 다수의 Navigational Property가 같은 클래스를 참조하는 상황, 어떻게 대처할까  (0) 2022.09.07
[EFCore] Convention을 알아보자  (0) 2022.09.06
'공부/EFCore' 카테고리의 다른 글
  • [EFCore] 다수의 Entity Class를 하나의 테이블에 매핑하기
  • [EFCore] 상속 관계를 매핑해보자 : Table Per Hierarchy (THP) 만들기
  • [EFCore] Shadow Property와 Backing Field
  • [EFCore] 다수의 Navigational Property가 같은 클래스를 참조하는 상황, 어떻게 대처할까
돌멩이수프
돌멩이수프
Information technology
  • 돌멩이수프
    WHAT DOES "IT" STAND FOR?
    돌멩이수프
  • 전체
    오늘
    어제
    • 분류 전체보기 (239)
      • 언어 (73)
        • html (3)
        • css (1)
        • java (6)
        • C (26)
        • C++ (2)
        • C# (29)
      • 공부 (7)
        • Unity (43)
        • 게임 서버 (26)
        • 네트워크 (5)
        • 데이터베이스 (7)
        • EFCore (19)
        • 기타 (14)
        • Git (5)
        • 운영체제 (1)
        • 소프트웨어공학 (21)
      • 2024-여름 (12)
      • 자기 관리 (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    네트워크
    코딩
    coding
    자바
    EntityFramework
    백준
    Python
    게임서버
    EFCore
    java
    라즈베리파이
    C언어
    unity
    유니티
    C
    디자인패턴
    tcp
    HTML
    Entityfamework
    C#
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
돌멩이수프
[EFCore] Entity와 DB, Table 연동하기
상단으로

티스토리툴바