T4MVC MVC2 Представления в областях не созданы - PullRequest
3 голосов
/ 29 октября 2010

Я просто создаю пустой проект MVC2. Добавить область и контроллер и вид на него. Включите файлы T4MVC в проект и запустите пользовательский инструмент.

Все генерируется, кроме ViewNames для представлений в области.

Моя древовидная структура:

Районы

  • MyArea
    • Контроллеры
      • MyTestController.cs
    • Просмотры
      • MyTest
        • MyTestView.aspx
      • MySecondTestView.aspx

Как вы можете иметь представления непосредственно в папке Views, а также в папках, названных контроллером.

Кто-нибудь испытывал что-то подобное?

Ответы [ 2 ]

2 голосов
/ 29 октября 2010

T4MVC определенно поддерживает доступ к представлениям в области.Я только что попробовал следующее в новом проекте:

  • Создание области с именем 'Stuff'
  • Создание там контроллера Foo
  • В этом контроллере щелкните правой кнопкой мышина Index () и попросите его создать представление
  • Перезапустить пользовательский инструмент T4MVC

После этого я могу написать либо:

    public virtual ActionResult Index()
    {
        return View(Views.Index);
    }

или

    public virtual ActionResult Index()
    {
        return View(MVC.Stuff.Foo.Views.Index);
    }
0 голосов
/ 29 октября 2010

ASP.NET MVC 2 работает, из коробки, используя соглашения об именах, чтобы связать представления с действиями контроллера. Эти соглашения позволяют ему находить представления по умолчанию для действий в контроллере.

Например, MyTestController.cs будет иметь действия. Допустим, у него есть только один, Test.

По умолчанию MVC Framework будет искать представление с именем Test.aspx в папке MyArea / Views / MyTest

Если он не найдет его там, он будет искать представление Test.aspx в / MyArea / Views / Shared

Тогда это будет выглядеть в /Views/Shared.

[Возможно, мне не хватает одного местоположения, я уверен, что есть 4, но не могу вспомнить другое ... Во всяком случае, принцип стоит]

Если он не может найти Test.aspx ни в одном из этих мест, он будет жаловаться.

Кажется, вы боретесь с этими соглашениями. И это приведет вас ко всем видам осложнений. Поэтому лучше прочитать хорошую книгу по MVC и по-настоящему изучить основы того, как MVC разработан для работы.

...