У меня есть вопрос. Вчера я начал изучать ASP.NET MVC3 и создал блог, где я могу добавлять, редактировать, удалять сообщения и комментировать эти сообщения.
Но я чувствую, что хочу создать его по-другому, потому что я думаю, что сделал это неправильно.
У меня есть два контроллера. HomeController и BlogController, и я думаю, что это очень неправильно, так как я не / добавляю блог, я добавляю сообщение / комментарий. Также я хочу, чтобы мой сайт состоял не только из самого блога.
Что я хочу сделать в этом сценарии
/Controllers
HomeController.cs
/Blog
PostController.cs /* IndexAction - Show list of entries; DetailsAction - Show only one entry with comments under */
CommentController.cs /* ListAction - Lists comments (not sure how to list them in Blog controller with PartialView yet...); AddAction - Add comment within Details of Post (again not sure if I can do this) */
/SomeOtherThing
SomeOtherController.cs /* Some random data from database like greeting in index page or whatever else not related to blog in any way */
/Admin
BlogController.cs /* For edit/delete blog data like comments/posts */
SomeOtherController.cs /* For editing the other thing, not sure what for now */
AccountsController.cs /* For editing accounts and such... */
Я думаю, что я хочу, чтобы моя иерархия контроллеров выглядела так, но я не уверен, что это правильный способ сделать это. Я скорее начинаю учиться правильно, затем делаю это неправильно в моем первом проекте, а затем заново учусь, как делать это правильно.
Кроме того, о тех комментариях, это хорошая идея сделать их в отдельном контроллере? Потому что я хочу добавить / показать в действиях Post. Например, localhost/blog/post/1
покажет сообщение + форму для добавления комментария + список комментариев. Но я пока не знаю, как это сделать ..:)