Является ли объектом доступа к DAO-данным - обычно используемым шаблоном в .NET? Я всегда использовал DAO как способ обеспечить доступ к моему слою данных. Например, у меня может быть тонкий интерфейс над моей EntityFramework ObjectContext, отображающий все мои объекты ObjectSet как IObjectSet.
Затем комплексные запросы будут отображаться DAO, каждый из которых зависит от этого интерфейса. У меня может быть ProductDAO, который предоставляет методы типа GetProductsOnSale()
или GetInfrequenlySoldProducts()
. Затем мои контроллеры или докладчики будут использовать эти методы, которые, вероятно, будут виртуальными, позволяя выполнять определенные результаты для модульных тестов.
Так что это обычно используемая идиома в .NET? По какой-то причине подавляющее большинство примеров, которые я вижу в Интернете с использованием этого шаблона, основаны на Java. Даже этот вопрос по лучшим методам DAO отмечен как Java, а не С#.
Нет ничего плохого в использовании чего-то из другого сообщества, я просто немного опасаюсь, что все вокруг меня делают вещи по-другому...