我想改变这个
localhosht:3220 / myController的/ MyAction ID = 1
到这个
localhosht:3220 /会将myText / myController的/ MyAction ID = 1
即使在重定向,路由或其他情况下,它也可以随时工作。
感谢。
答案 0 :(得分:0)
只需将文字添加到路线网址:
routes.MapRoute(
name: "Default",
url: "myText/{controller}/{action}"
);
答案 1 :(得分:0)
您可以使用自定义route
来匹配您想要的uri
。在RegisterRoutes
的{{1}}方法中,添加以下内容。
此处的顺序非常重要,如果您在“MyText”路线之前添加“默认”路线,则 MyText 路线将不会被点击。
RouteConfig
答案 2 :(得分:0)
如果您的意图是使用url
,那么添加myText/{controller}/{action}/{id}
参数myText
( 您的默认路线)的路线肯定会有效通常,您可能还想看看areas的概念。
默认情况下,在Global.asax
的{{1}}功能中,您可以调用该方法:
Application_Start()
这样做是为了在项目中查找特殊的AreaRegistration.RegisterAllAreas();
文件夹,并在其下注册具有从Areas
扩展的类的每个文件夹并覆盖AreaRegistration
函数。与您的RegisterArea
类似,此类可能如下所示:
RouteConfig.cs
注意:您可以通过 scaffolding 在MVC项目中创建区域:只需右键单击您的项目并public class MyTextAreaRegistration : AreaRegistration
{
public override string AreaName
{
get
{
return "MyText";
}
}
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
name: "MyText_default",
url: "MyText/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
- > Add..
。一切都会自动完成。
最后,Areas为您的Area
需求提供了更持久的解决方案。有关详细文章,您可以查看this。
答案 3 :(得分:0)
INotifyPropertyChanged
);
如果你想使用像myText这样的参数来使你的Url Seo友好,它会对你有用。