Лучшие практики, дизайн объектов ASP.NET MVC - PullRequest
0 голосов
/ 11 мая 2010

У меня есть вопрос о дизайне кода, который беспокоил меня некоторое время, вы видите, что я занимаюсь рефакторингом моего сайта Cosplay Denmark, сайта, на котором коспалеры могут загружать свои собственные изображения в костюмах. Первоначальный сайт был сделан на php, Zend MVC, но мой рефакторинг выполняется в ASP.NET MVC 2.

Если вы берете сайт http://www.cosplaydanmark.dk/Costumes/ (Вы можете переключиться на английский в левой колонке (Sprog))

Здесь вы видите список всех аниме, которые у нас есть на сайте с изображениями, мы показываем название, сколько разных символов и сколько изображений есть в этом аниме.

http://www.cosplaydanmark.dk/Costumes/Bleach

Если вы нажмете на аниме, вы получите список символов в данном аниме, в котором у нас есть изображения, здесь мы покажем имя персонажа, сколько галерей и сколько изображений.

http://www.cosplaydanmark.dk/Costumes/Bleach/Ichigo_Kurosaki/

Если вы нажмете на имя персонажа, вы получите список галерей под данным персонажем в данном аниме. Здесь у нас есть некоторая информация о галерее, например, количество изображений.

http://www.cosplaydanmark.dk/Costumes/Bleach/Ichigo_Kurosaki/Admi/

Если вы нажмете на галерею, вы получите список изображений в галерее.

Моя база данных на данный момент выглядит так.

Разработка базы данных http://sogaard.us/uploades/dbdesign.jpg

Как вы можете себе представить, существует множество разных запросов для создания сайта, на первом сайте мне нужно сделать выборку в таблице «аниме», и для каждого результата мне нужно сделать выбор подсчета на персонажей и галереи.

Мой план по созданию этого будет одним из следующих

План объектов http://sogaard.us/uploades/objectsetup.jpg

Где IList, будет ленивый список загрузки.

Но я не могу решить, каким будет наилучшее решение для этого, даже если есть лучший способ сделать это. Мой приоритет - хорошая производительность при минимальной потере функций и обслуживании кода.

Я использую шаблон службы с хранилищем linq to sql.

Мой дизайн не является абсолютным, я хочу изменить его, если это может повысить производительность: D

Я надеюсь, что я достаточно хорошо описал мой вопрос, чтобы вы поняли, о чем я, но спросите, есть ли что-то, что я пропустил.

1 Ответ

0 голосов
/ 12 мая 2010

Мне лично нравится иметь возможность привязать и обратно к

Чтобы каждый из них имел свойство animeId, являющееся внешним ключом, обратно к

Так что я могу сделать простой запрос getAllImagesByAnimeId

...