我正在开发一个 ASP.Net MVC 项目,其中登录用户和普通用户之间的 url 格式没有区别,他们都浏览像这些 url 的页面:
www.example.com/home/contents (anyone)
www.example.com/home/about (anyone)
www.example.com/order/list (page for logged in user)
www.example.com/help/contact (page for logged in user)
www.example.com/buy-now (custom url for route order/buy action)
我想将用户登录页面移动到不同的文件夹,这样搜索提供商就不会为这些页面编制索引。不需要登录的页面应保留相同的 url。所以结果应该是
www.example.com/home/contents (anyone)
www.example.com/home/about (anyone)
www.example.com/user/order/list (page for logged in user)
www.example.com/user/help/contact (page for logged in user)
www.example.com/user/buy-now (custom url for route order/buy action)
我怎样才能做到这一点?
最佳答案
看来您需要使用 Area 的。 创建一个用户区域并将所有用于登录用户的订单和帮助等 Controller 移动到该区域。
如果不想把这个移到用户区。您也可以进行路由配置。类似于 -
routes.MapRoute(
name: "User",
url: "user/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
关于asp.net-mvc - ASP.NET Mvc 站点中登录用户的自定义目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32712730/