작성자 없음
작성자 정보가 삭제된 글입니다.
해결된 질문
작성
·
292
0
Guild guild = db.Guilds
.Include(g => g.Members)
.Single(g => g.GuildID = id);
//....
guild.Members = new List<Player>(){ new Player() { Name = "Rookiss"} };
위의 명령을 그대로 실행시켰는데 갑자기 DELETE관련 에러가 발생해서 보니 Player를 생성은 하는데 기존 Player테이블의 모든 데이터도 삭제가 되는 것 같습니다.
에러가 발생한 것은 모든 Player의 데이터를 삭제하려니 Item이 FK로 참조하고 있기 때문에 .ThenInclude(p => p.Item)또한 포함시켜야하는 것이었구요.
실제로 ThenInclude를 추가해서 실행해보니 에러 없이 잘 작동되고, Player테이블을 확인해보니 모든 Player가 삭제되었습니다.
이게 EFCore가 업데이트 되면서 정책이 바뀐건지, 아니면 제가 어디서 실수를 한건지 모르겠습니다.