GlobalRepository는 프로젝트의 모든 저장소를 대체하는 "일반" 저장소입니다. 따라서 하나의 저장소를 유지하려면 하나의 고유한 저장소만 사용해야 합니다. GlobalRepository를 사용하면 각 모델에 대해 새 저장소를 만들고 메서드를 정의할 필요가 없습니다! 그냥 추가해서 사용하세요.
참고:
목표는 모든 모델에 대해 하나의 저장소를 사용하는 것이기 때문에 It GLOBAL 저장소를 GENERIC이라고 부르지 않습니다. 즉, 프로젝트에서 이를 전역으로 호출합니다. 이 경우 수많은 코드를 피할 수 있습니다(물론 자유롭게 변경하고 구현할 수 있습니다). 일반적인 GENERIC 저장소와 같습니다)
이 메서드는 최고의 유연성을 제공하고 메모리 내 필터링 등과 달리 효율적인 쿼리를 허용하며 수많은 특정 데이터 가져오기 메서드를 만들 필요성을 줄일 수 있는 IQueryable을 반환합니다. 반면에 이제 사용자에게 산탄총을 제공했습니다. 그들은 의도하지 않은 일(.include() 사용, 무거운 쿼리 수행, 해당 구현에서 메모리 내 필터링 수행 등)을 수행할 수 있습니다. 이는 기본적으로 계층화 및 동작 제어를 회피합니다. 전체 액세스. 따라서 사용하기 전에 팀, 경험, 앱 크기, 전반적인 레이어링 및 아키텍처를 고려하십시오.
이 저장소에는 다른 엔터티가 엔터티를 사용할 때마다 데이터베이스를 확인하는 SmartDeletersService도 포함되어 있습니다. 메서드는 해당 엔터티를 찾으면 True를 반환하고, 그렇지 않으면 False를 반환합니다.
GlobalRepository는 어디에서나 작업할 수 있습니다. 파일을 다운로드하고 프로젝트에 추가하기만 하면 됩니다. :D
기억해 주세요:
추신: 올바르게 작동하려면 모델이 BaseEntity를 확장해야 합니다. BaseEntity가 어떻게 보이는지 볼 수 있도록 파일을 추가했습니다(초보용).
필요한 것이 있으면 [email protected]으로 연락해 주세요.