Подтвердить что ты не робот

Области ASP.NET MVC: важны ли они для большого приложения?

Я занимаюсь разработкой большого приложения ASP.NET MVC. В настоящее время я работаю над механизмами, которые я буду использовать для структурирования своих контроллеров/представлений. Я вижу некоторые упоминания о монорельсе, и он использует "районы". Я рассмотрел статью Haacked и выглядит как интересный вариант. Я хотел бы знать, действительно ли кто-либо реализовал области в приложении ASP.NET MVC, и если у них есть какие-либо онлайн-ресурсы, которые могли бы помочь реализовать области и оправдать их существование.

4b9b3361

Ответ 1

Я и моя команда в настоящее время разрабатывают очень большое приложение, используя структуру ASP.NET MVC в качестве базовой технологии. Мы используем Areas, Сильно напечатанные имена имен и наша собственная версия Локализация. Пока он работает очень хорошо.

Прерыватель транзакций с ASP.NET MVC для меня будет состоять в том, что имена контроллеров должны были быть уникальными. Было совершенно очевидно, что требуется контроллер для управления запасами в инвентаре и диспетчерских областях моего приложения, и сортировка их будет слишком сложной. С областями это уже не проблема. Я настоятельно рекомендую использовать их, как обрисовал Фил Хаак.

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

Я бы не удивился, увидев, что Areas реализован в ASP.NET MVC очень скоро.

Удачи вам в вашем приложении, я не думаю, что вы пожалеете о выборе ASP.NET MVC.

Ответ 2

Поддержка областей в большом приложении абсолютно необходима, на мой взгляд. Мне кажется довольно странным, что Microsoft намеревается освободить ASP.NET MVC 1.0 без встроенной поддержки областей.

К счастью, у MVC нет возможностей, которые он может использовать в расширяемости. Например, в архитектуре S # arp, как кратко сказал Асаф, я взял руководство от Фила Хаака (http://haacked.com/archive/2008/11/04/areas-in-aspnetmvc.aspx) и Стив Сандерсон (http://blog.codeville.net/2008/11/05/app-areas-in-aspnet-mvc-take-2/), но изменил объединенный результат для поддержки областей непосредственно под папкой представления. (Мне не понравилось, что для хранения областей просмотра была отдельная папка "Области".) Другими словами, если вы создаете область "Животные" с соответствующим контроллером Animals.AardvarksController, ваша папка "Представления" будет отображать "Виды/Животные" /трубкозубов.

Если вы не заинтересованы в использовании всей архитектуры S # arp, я бы посоветовал вам хотя бы проверить, как области были реализованы в этой структуре для использования в вашем собственном приложении. Соответствующий код включает в себя:

Кстати, архитектура S # arp включает в себя генератор CRUD-лесов, который автоматически учитывает вложенные пространства имен. Как упоминал Асаф, вы можете узнать больше об этом на http://code.google.com/p/sharp-architecture/

Билли МакКафферти

Ответ 3

Взято из S # arp apchitecture 1.0 Beta примечания к выпуску:

Включение "областей" зрения, которые плавно поддерживается как подпапки в папке "Представления"