대형 프로젝트 - C# + 유니티로 만드는 MMORPG 게임 개발/(5) EF Core

Backing Field + Relationship

monstro 2025. 8. 25. 11:03
728x90
반응형

- 개요

Backing Field private fieldDB에 매핑하는 것을 의미합니다.

다른 테이블을 참조하고 있는 Navigation Property에서도 사용할 수 있는데,

사용하게 되면 참조하는 다른 DB의 변경사항에 맞춰 데이터를 쉽게 동기화할 수 있습니다.

 

1) DataModel 클래스

 

아이템의 평점을 설정할 수 있는 ItemReview 엔티티 클래스를 추가하였습니다.

 

 

Item 엔티티 클래스 ItemReview를 저장하는 Listpriavate 멤버 변수(Backing Field)로 추가하였습니다.

Backing Field에는 Reviews 프로퍼티로 접근할 수 있습니다. 

아이템에 대한 평점AverageScore 속성으로 나타나며 함수들을 통해 값을 수정할 수 있습니다.

 

2) AppDBContext 클래스

 

OnModelCreating 함수에 위의 로직을 추가하여 Reviews 프로퍼티ItemReview에 접근하도록 설정합니다.

 

3) DBCommands 클래스

 

CreateTestData 함수에 위의 로직을 추가합니다.

따라서 첫 번째 Item에 대한 평점을 얻을 수 있습니다.

 

 

ShowItems 함수에 위의 로직을 추가하여 아이템에 대한 평점을 확인합니다.

 

- 최종 실행 결과

 

728x90
반응형