• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    해결됨

AccountServer 구동 문제

20.11.09 19:35 작성 조회수 241

1

안녕하세요

첨부파일로 다운받은 파일을 실행했을때, 위의 빌드와 아래의 패키지 관리자 콘솔에서 AccountServer를 모두 맞춰줬는데도 불구하고  update-database를 실행하면
"More than one DbContext was found. Specify which one to use. Use the '-Context' parameter for PowerShell commands and the '--context' parameter for dotnet commands."

에러가 발생합니다. accountDB를 어떻게 하면 생성할수 있을지 궁금합니다~

답변 5

·

답변을 작성해보세요.

2

iamparkc님의 프로필

iamparkc

2021.03.21

add-migration Init -Context AppDbContext 후 update-database -Context AppDbContext 해주니까 해결되었습니다 ^^

1

ㅋㅋㅋ 본의아니게 낚시를 한 것 같네요.
-Context [AccountDbContext]와 같이 뒤에 만들어줄 Context를 골라주라는 의미였습니다.
AccountServer에서 DbContext를 상속 받은건 하나지만
SharedContext 프로젝트도 참조하고 있기 때문에
EF Core 입장에서는 2개가 있어서 발생하는 문제입니다.

1

update-database -Context AccountDb 이런 식으로 골라서 생성해주시면 됩니다!
(패키지 관리자  콘솔에서 기본 프로젝트가 알맞게 되어 있어야 합니다)

0

iamparkc님의 프로필

iamparkc

2021.03.21

위의 방법대로 해서 update-database -Context AppDbContext로 AccountDB는 만들어졌는데 Player테이블이 안만들어지네요.

dbo._EFMigrationHistory밖에 없습니다.

뭐가 문제일까요

패키지 매니저 콘솔 로그

More than one DbContext was found. Specify which one to use. Use the '-Context' parameter for PowerShell commands and the '--context' parameter for dotnet commands.

0

스승님 회신해주셔서 감사합니다!

빌드설정+패키지 관리자 콘솔의 기본 프로젝트 설정을 다 해주었는데도 불구하고, 희안하게 (SharedDb와 GameDB는 잘 실행이 되는데) AccountDB 만 생성이 안됩니다 ㅜ

update-database -Context AccountDb라고 실행하면 이번엔 No DbContext named 'AccountDb' was found. 라고 뜹니다.

그래서 update-database -Context AppDbContext라고 하니까 AccountDB가 생성이 되었는데... 이건 이거대로 왜 생성이 되었는지 궁금합니다. 

AccountServer에서  DbContext를 상속받은건 분명 AppDbContext하나뿐이었을텐데 왜 저런 에러가 났던건지 궁금합니당..