![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
lexnext1 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 2.6.2011 Репутация: нет Всего: нет |
Доброго времени суток, уважаемые форумчане.
Пишу сейчас приложение на ASP.NET, но вопрос не касается конкретно этой технологии, он больше относится к архитектуре приложения в целом. Так вот. Для взаимодействия с базой данных использую Entity Framework: чтение, запись и т.д. Все эти операции у меня происходят в сервисном слое, который вызывается из экшенов контроллера. Т.е. в основном суть Контролера - это получить данные отдать в сервисный слой, получить результат и вернуть в представление. И вот тут вот вопрос: что из себя этот результат должен представлять, если, к примеру, мне нужно отобразить пять записей содержимого одной таблицы? Что я должен передавать в представление? Коллекцию объектов класса унаследованного от EntityObject, структура которого описывается в edmx файле? Либо мне имеет смысл создать простенькую модель содержащую в себе только свойства (поля таблицы) и коллекцию ее объектов передавать в представление, заведомо заполнив результатом - ну это очень трудоемко, если таблиц много. Надеюсь не запутал. Поделитесь, пожалуйста, опытом. Заранее спасибо. |
|||
|
||||
Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 11 Всего: 24 |
все как всегда зависит от деталей. если это проект маленький и поддерживать его в будущем не планируется то можно не загоняться. если же это что то более менее долгосрочное, то лучше разделить все на отдельные слои и не смешивать их между собой. использовать в контроллерах обращение к слою данных приведет к тому что у тебя будет этот самый код выборки из базы размазан по всему проекту, и в перспективе можно огрести много проблем и "непонятных" багов. я бы наверное работал со своими данными, отвязав тем самым все приложение от модели базы. ну и плюс собрал весь код сохранения и выборки данных в одном месте.
|
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |