我盯着习惯MVC,经过几个小小的学习项目后,我现在准备好吃更多的东西了。
我希望研究这样的结构。
/管理/指数
/管理/用户/制作:阅读:更新:删除:列表
/管理/新闻/制作:阅读:更新:删除:列表
考虑到最后两个,我想我应该有控制器
管理员
管理用户
管理新闻
...而且我应该将视图存储在这些文件夹中
/浏览/管理
/浏览/管理/用户
/ Views / Admin / News
以上听起来不错吗?
最后,我如何设置这些路线来击中那些控制器?
我尝试了类似这样的功能。
routes.MapRoute(
"Admin/User", // Route name
"/Admin/{controller}/{action}/{id}", // URL with parameters
new {controller = "AdminUser", action = "Index", id = UrlParameter.Optional} // Parameter defaults
);
答案 0 :(得分:1)
我盯着习惯MVC,经过几个小小的学习项目后,我现在准备好吃更多的东西了。
如果您开始学习asp.net mvc,并尝试实施管理面板,我会建议“区域”。看看Walkthrough: Organizing an ASP.NET MVC Application using Areas。
答案 1 :(得分:1)
我会使用区域功能。
看到这个:
让我觉得你可以添加一个 Admin 区域,并在该区域下面有单独的控制器。然后您的网址将是/ Admin / User和/ Admin / News等。
答案 2 :(得分:1)
我同意这些区域可能是您可能想要查看的内容,因为它非常适合管理类型区域,并且网络上有大量示例。
但是,如果你没有沿着那条路走下去,那就稍微回答一下你的问题。
首先。视图将位于文件夹中:
Views/Admin
Views/AdminUser
Views/AdminNew
二。路径只需要是项目中首次设置的默认路径 即
{controller}/{action}/{id}
其中操作将是Admin,AdminUser和AdminNew控制器公开的方法。
要获得您提到的路由,您可以执行以下操作:
routes.MapRoute(
"AdminUser",
/Admin/User/{action},{id},
new {controller = "AdminUser", action = "Index", id = UrlParameter.Optional}
);
同样对于新闻。对于管理员,我相信默认路线会抓住它。
希望有所帮助。
答案 3 :(得分:0)
你也可以使用一个区域作为管理部分。