인프런 커뮤니티 질문&답변

김도하님의 프로필 이미지

작성한 질문수

[C#/.NET 7.0]어서와, WPF는 처음이지?

DB CRUD 설계는 하고.. 가야지..? (Interface, Service, D.I 활용)

Databse 인터페이스 services 등록 실패 문의

작성

·

9

0

  • 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!

  • 마크다운, 단축키를 이용해서 편리하게 글을 작성할 수 있어요.

  • 먼저 유사한 질문이 있었는지 검색해보세요.

  • 서로 예의를 지키며 존중하는 문화를 만들어가요.

  • 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

안녕하세요.

DB CRUD 설계 쪽 강의 진행 중에 있습니다.

이전 강의까지는 문제 없이 잘 따라왔는데,

이번 강의에서 예상치 못한 에러가 발생했는데 해결에 어려운 부분이 있습니다.

강의를 3, 4번 돌려보며 놓친 부분이 있는지 오탈자가 있는지 계속 확인해 보았지만 문제점이 딱 보이지가 않네요.

 

IDatabase 인터페이스, GangnamguPopulationService 서비스, GangnamguPopulation 모델을 만들고 App 비하인드 코드에 서비스 등록을 하려고 했지만 "CS0311" 에러 코드가 발생하며 정상적으로 작동 되지 않고 있습니다.

아래는 스크린샷 첨부 입니다.

 

== IDatabase.cs ==

image.png

 

== GangnamguPopulationService.cs ==

image.png

 

== GangnamguPopulation.cs ==

image.png

 

== App.xaml.cs ==

image.png

 

답변 2

0

김도하님의 프로필 이미지
김도하
질문자

해결하였습니다.

잘 못 넣은게 있었네요 ㅎㅎ

internal class GangnamguPopulationService : IDatabase<GangnamguPopulationService >
internal class GangnamguPopulationService : IDatabase<GangnamguPopulation>

0

안녕하세요, 인프런 AI 인턴입니다. 도하님!

현재 .NETWPF 환경에서 의존성 주입(Dependency Injection) 설정과 관련하여 문제를 겪고 계시는 것 같습니다. 이 문제는 services.AddSingleton<IDatabase<GangnamguPopulation>, GangnamguPopulationService>(); 부분에서 발생하며, CS0311 에러 코드를 통해 주로 발생하는 원인은 제네릭 타입의 변환 문제인 경우가 많습니다.

해당 문제에 대한 유사한 해결 사례를 먼저 확인해 보세요:

  1. 세션2 DB CRUD 에서 실행 오류 건. - 강의 진행 시 추가적인 서비스 등록이 누락되어 발생했던 문제에 관한 다른 수강생의 질문과 해결 과정을 확인하실 수 있습니다.

에러 코드를 해결하기 위해서는 아래 몇 가지를 확인해 보시면 좋을 것 같습니다:

  • GangnamguPopulationService 클래스가 IDatabase<GangnamguPopulation> 인터페이스를 제대로 구현하고 있는지 점검하세요.
  • GangnamguPopulationService 클래스와 등록하려는 제네릭 인터페이스의 타입 매칭이 정확한지 확인하세요.
  • 컴파일러가 GangnamguPopulationServiceIDatabase<GangnamguPopulation>의 구현체로 인식할 수 있도록 모든 필수 메소드를 구현했는지 점검하세요.

사진에서 보여주신 오류에 대한 구체적인 작업을 통해, 이전에 학습하신 내용의 프로젝트 설정과 코드의 세부 사항을 비교하시는 것도 좋습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.