Разделяйте публичную / административную область в разных областях asp.net mvc приводит к двойным контроллерам? - PullRequest
0 голосов
/ 12 декабря 2011

На моем сайте есть несколько общедоступных страниц, на которых отображаются некоторые списки, такие как новости, продукты и т. Д., Которые могут видеть все.Так что у меня есть NewsController и ProductController.Действие Создать / Изменить может только / должно выполняться только администратором.Когда я отделяю административные элементы (Create / Edit) от общедоступных (List), я создаю 2 области public / admin, каждая из которых имеет свой собственный контроллер.Это означает, что у меня будет ДВА ProductController, один с действием List, а другой с действием Create / Edit, и TWO NewsController - та же игра ...

Это имеет смысл?Я выгляжу как СУХОЙ - не повторяйся!

Как бы ты справился с этим сценарием, касающимся новой функции asp.net AREA?

Ответы [ 2 ]

0 голосов
/ 12 декабря 2011

Я не уверен, как ты повторяешься?Я всегда создаю область администратора для грубых операций.Вы должны переместить всю свою логику за пределы своих контроллеров в отдельный класс, и в зависимости от того, насколько велик этот сайт, может быть, отдельный проект в целом.Посмотрите, как Raccoon Blog структурирует свой проект.Я многому научился, изучая их код.Если у вас есть вопросы о том, как структурировать ваш код, я советую посмотреть - https://github.com/ayende/RaccoonBlog/tree/master/RaccoonBlog.Web. Я думаю, у них есть отличный пример того, как правильно реализовать области администрирования.

0 голосов
/ 12 декабря 2011

AuthorizeAttribute - это то, как я справлюсь с этим, я бы не использовал Области для разделения разрешений.

...