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