Структура .NET MVC проекта - PullRequest
       4

Структура .NET MVC проекта

1 голос
/ 22 января 2011

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

Проще говоря, это мой проект:

  1. Будет несколько страниц с информацией / информацией: о нас, контактах, о том, как ... Полезно ли затем создавать AboutController или я должен создавать отдельные контроллеры для каждой страницы?

  2. Там будет личный кабинет, который требует входа в систему.Это хорошая идея, чтобы создать область для этого?Может быть, например: xxx.com/member/stuff/edit/1

  3. Нужно ли мне тогда создавать «общую» область или я могу просто добавить «About» в корень, какэто: xxx.com/about/contact вместо xxx.com/general/about/contact?

  4. А как насчет главных страниц.Страница будет выглядеть очень похоже при входе в систему, а когда нет.Является ли хорошей практикой иметь две главные страницы для этого и пытаться повторно использовать код (например, нижний колонтитул и меню) с частями?

  5. Я только немного работал с MVC 2,разве глупо не пойти с MVC 2 RC для нового проекта, подобного этому?

Любые ответы или советы высоко ценятся.Спасибо

1 Ответ

2 голосов
/ 24 января 2011

Будет несколько страниц с информацией / информацией: о нас, свяжитесь, как .. это хорошо практиковаться, чтобы затем создать AboutController или я должен сделать отдельные контроллеры для каждой страницы?

Обычно у меня есть контроллер Home или About (или оба), в котором находятся эти страницы. Отдельные контроллеры обычно не нужны. На большинстве моих сайтов это почти все страницы со статическим контентом, которые не поддерживают POST, поэтому контроллеры в любом случае очень тонкие.

Там будет членская зона, которая нужен логин. Это хорошая идея создать область для этого?

Это решение весьма субъективно. Я хотел бы предложить, что если у вас нет четкого понимания, когда и почему вы хотите область, то не используйте ее. Кроме того, если в вашей заявке есть только зарегистрированные пользователи, а другие нет, значит, области не нужны.

Должен ли я тогда создать "общая" область или я мог бы просто поставить «О» в корне

В корне это «общая» область.

Как насчет главных страниц. Страница будет очень похожи при входе в систему, а когда нет. Это хорошая практика для есть две главные страницы для этого и попробуйте повторно использовать код (например, нижний колонтитул и меню) с частями?

Я не использую двух мастеров для этой ситуации. Все, что изменяется для большинства моих сайтов, - это некоторый заголовок (наличие ссылки для входа или выхода).

Вместо этого я создаю Html Helper для условной визуализации того или иного элемента управления:

public static class PackageThumbnailHelper
{
    public static MvcHtmlString AuthenticationControls(this HtmlHelper helper)
    {
                if (helper.ViewContext.HttpContext.Request.IsAuthenticated) {
                    return helper.Partial(MVC.Shared.Views.LoggedOnAuthenticationControls);
                } else {
                    return helper.Partial(MVC.Shared.Views.NotLoggedOnAuthenticationControls);
                }
    }
}

Я только немного работал с MVC 2, это глупо, чтобы не пойти с MVC 2 RC для нового проекта, как это?

MVC 2? Как насчет MVC 3? MVC 3 был выпущен недавно. Он включает в себя движок Razor, и я бы сказал, что его стоит использовать. Я не вижу причин не использовать MVC3 для нового проекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...