DAO 데이터 액세스 개체는 .NET에서 일반적으로 사용되는 패턴입니까? 필자는 데이터 영역에 대한 액세스를 제공하기 위해 항상 DAO를 사용했습니다. 예를 들어, 모든 ObjectSet을 IObjectSet으로 노출시키는 EntityFramework ObjectContext에 대해가는 인터페이스가있을 수 있습니다.DAO 패턴은 .NET에서 널리 사용됩니까?
그런 다음 복잡한 쿼리는 DAO에 의해 노출 될 것이며, 각 쿼리는이 인터페이스에 종속됩니다. GetProductsOnSale()
또는 GetInfrequenlySoldProducts()
과 같은 메서드를 제공하는 ProductDAO가있을 수 있습니다. 컨트롤러 또는 발표자는 이러한 방법을 사용합니다.이 방법은 단위 테스트에 대해 특정 결과를 스터 빙할 수있는 가상의 가능성이 높습니다.
.NET에서 일반적으로 사용되는 관용구입니까? 어떤 이유로이 패턴을 사용하여 온라인으로 볼 수있는 예제의 대부분이 Java를 기반으로합니다. DAO 모범 사례에 대한 this question조차도 C#이 아닌 Java로 태그가 지정됩니다. 다른 커뮤니티에서 뭔가를 사용하여 아무 문제가 없습니다
은, 난 그냥 내 주변의 모든 사람들이 다른 일을하는 것이 약간의 두려움 ...
나의 이해는 저장소가 모든'IObjectSet'멤버를 노출은 "것"이라고이며, DAO는 쿼리를 구축하기 위해 저장소를 사용하는 클래스입니다. 그것은 당신이 그 용어를 사용하는 방법과 일치합니까? –
@ 아담이 - 아니, 정말은'DAO' 실제 DB 인터페이스를 _abstracts_ 무엇의'Repository'가되어 '메모리'컬렉션을 대표하는'DAO'의 사용을 추상화 것입니다. 알았어. – Oded
. 저장소의 인스턴스를 가져 와서 복잡한 쿼리를 노출하는 객체를 어떻게 부르겠습니까? 간단한 인터페이스 뒤에 복잡한 상호 작용을 조정 뭔가 - - 확실히 내가이 일을 꽤 꽤 빨리 –