我当前正在使用具有三种使用类型的ASP.NET MVC应用程序。1)管理员2)学校3)父母
我想用3个部分装饰URL
like if it is admin then -> Admin/{Controller}/{Action}/{id}
if Shcool -> School/{Controller}/{Action}/{id}
if Parent - > Parent/{Controller}/{Action}/{id}
我试图修改routeconfig.csAS
routes.MapRoute(
name: "Default",
url: "School/{controller}/{action}/{id}",
defaults: new { controller = "EstablishmentLogin", action = "Login", id = UrlParameter.Optional });
它有效,但是问题是我曾经使用过Ajax调用的地方,我需要修改url来自[{{Controller}/{action}/{id}]到[school/{Controller}/{action}/{ID}]。
找出所有AJAX调用并修改URL将很耗时。请建议我是否有其他选择。
Also I want to Organize the folders Physically as
1)Admin -> Controllers
-> View
-> models
2)School - > Controllers
- > Views
-> Models`enter code here
3)Parent - > Controllers
- > Views
- > Models
How can i acheive this ?
将它们设置为区域。右键单击您的项目 ->添加 ->区域。它将像您在问题中提出的内容一样创建一个文件夹结构。该区域还将拥有自己的RouteConfig.cs
版本,名为[AreaName]AreaRegistration.cs
。这就像您的主要项目中的一个迷你MVC网站。如果您需要在区域之间或主站点之间或您构造的区域之间创建链接,例如... Url.Action("Action", "Controller", new { area = "AreaName" });