У меня есть набор классов уровня доступа к статичным базам данных, которые выполняют операции CRUD на автомобиле, дилере и большой записи отслеживания. Эти объекты могут быть довольно значительными в потреблении памяти из-за записи заметок против них и т. Д. Давайте назовем этот набор классов «А».Решения по проектированию для уровня доступа к данным ASP.NET
Кроме того, у меня есть еще один статический класс под названием Lookups, который выполняет операции только для чтения с целью заполнения DropDownLists. Возвращаются очень очень худые объекты (только идентификатор и текстовое поле) - назовем этот класс «B»
Методы в классе «B» считаются из тех же таблиц, что и в наборе «A».
Некоторые из кода в B похожи на то, что уже находится в «A», за исключением возврата меньших объектов.
Я нарушаю принцип DRY в B, но только потому, что не хочу возвращать большие объекты для заполнения выпадающего списка. Я хочу, чтобы эта система была масштабируемой, поэтому я просто собираюсь в ОЗУ. Но я не могу не думать, что может быть лучший способ, дизайн мудрый.
Что вы посоветуете?
Для следующего проекта я буду использовать Entity Framework, но это обычные ADO.NET объекты SqlConnection и SqlCommand для старой школы.
Привет, Mata. В настоящий момент у меня есть классы VehicleDA, DealerDA и HireDA, каждый из которых связан с операциями CRUD для соответствующих объектов. – user1154016
Я хотел добавить DA = Data Access. Кроме того, у меня также есть LookupDA, который читает из тех же таблиц БД, что и те объекты. Поскольку LookupDA читается из одних и тех же таблиц, это означает, что есть дубликат кода. Это СУЩЕСТВЕННОЕ нарушение, но я думаю, что это самая эффективная память. Но я борюсь сам, думая, что где-то есть запах – user1154016