Существуют ли соглашения об именах для ASP .NET MVC 3? - PullRequest
5 голосов
/ 10 февраля 2011

Когда я изучаю MVC 3, стало очевидно, что наименование имеет решающее значение для взаимодействия Dbase-Model-Controller-Views.

Существует ли уже существующий список соглашений об именах, которые следует использовать в приложении MVC?

Что-то вроде:

  • Имена таблиц (множественное число)
  • Названия моделей (в единственном числе от имени таблицы)
  • Папка представления должна иметь то же имя, что и класс контроллера (т. Е. Контракт -> производный от ContractController)

Ответы [ 2 ]

5 голосов
/ 10 февраля 2011

Единственное основное соглашение заключается в том, что имена классов контроллеров должны заканчиваться на «Controller». Любые другие соглашения просто представляют лучшие практики и не требуются для работы вашего приложения.

Упомянутые вами соглашения об именах таблиц и моделей существуют потому, что они делают код «читаемым» лучше (Select * From products where category = 1; Products.Insert(new Product()))

MVC автоматически ищет представление, соответствующее имени метода действия, и начинает искать в папке, имя которой совпадает с именем контроллера. Однако вы можете легко превзойти это, указав имя представления в результате просмотра (return View("MyCustomName"))

2 голосов
/ 11 февраля 2011

Существует не так много соглашений об именах, которые могут нарушить работу вашего приложения, кроме тех немногих, когда ваши контроллеры заканчиваются на «Controller» и вывод имени вызова «View ()» из имени действия.

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

...