Я только что заглянул в Linq с ASP.Net. Это действительно опрятно. Мне было просто интересно - как все классы заполняются? Я имею в виду в ASP.Net, предположим, что у вас есть файл Linq с именем Catalog, а затем вы используете цикл For для циклического перемещения по Catalogue.Products и распечатываете каждое имя продукта. Как сохранить данные? Проходит ли он просмотр таблицы Products при загрузке страницы и создает еще один экземпляр класса Product для каждой строки, эффективно копируя всю таблицу в массив класса Product?
Если это так, я думаю, что я создал систему, очень похожую на эту, в том смысле, что есть модуль SiteContent с экземпляром каждого класса Manager - например, есть UserManager, ProductManager, SettingManager и тому подобное. UserManager содержит экземпляр класса User для каждой строки в таблице Users. Они также содержат такие методы, как Create, Update и Remove. Эти менеджеры и их «элементы» создаются при каждой загрузке страницы. Это просто делает удобным и простым доступ к пользователям, продуктам, настройкам и т. Д. На каждой странице, что касается меня, разработчика. Любые последующие страницы, которые мне нужно создать, мне просто нужно сослаться на SiteContent.UserManager, чтобы получить доступ к списку пользователей, а не выполнять запрос внутри этой страницы (т. Е. Этот метод отделяет доступ к данным от работы страницы в так же, как использование кода позади, отделяет работу страницы от того, как она размещена).
Однако проблема в том, что эта техника кажется довольно медленной. Я имею в виду, что это эффективно создает базу данных при каждой загрузке страницы, беря данные из другой базы данных. Я принял такие меры, как, например, предотвращение создания ProductManager, если на него не ссылаются при загрузке страницы. Поэтому он не загружает данные в хранилище, когда они не нужны.
Мой вопрос в основном заключается в том, выполняет ли моя методика то же самое, что и Linq, в смысле дублирования данных из таблиц в свойства классов.
Заранее спасибо за любые советы или ответы по этому поводу.
С уважением,
Ричард Кларк