目前在我的项目中,我使用@ Url.Action在锚标签的href属性中创建链接.
例如:
<a href='@Url.Action("Index", "Home", new { id = 10 })' id="btn">Click</a>
Run Code Online (Sandbox Code Playgroud)
这工作正常,但产生的URL是......
/home/index?id=10
Run Code Online (Sandbox Code Playgroud)
有没有办法返回网址
/home/index/10
Run Code Online (Sandbox Code Playgroud)
对于SEO和审美目的?我使用id和number作为占位符 - 在实际应用程序中它可以并将使用字符串代替(所以...
<a href='@Url.Action("Index", "Home", new { name="test" })' id="btn">Click</a>
Run Code Online (Sandbox Code Playgroud)
返回网址
/home/index/test
Run Code Online (Sandbox Code Playgroud)
您需要确保路由正确。确保您有这样的路线:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional });
Run Code Online (Sandbox Code Playgroud)
对于您的“真实应用程序”,当您使用名为 的参数时,name您将需要一个如下所示的参数:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{name}",
defaults: new { controller = "Home", action = "Index" });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2175 次 |
| 最近记录: |