ASP.NET MVC传递参数作为url的一部分

亚历克斯·费多托夫(Alex Fedotov)

我正在尝试在应用程序中创建美观的url,但是当我使用以下结构时

@Url.Action("Edit", "Account", new { userId = user.Id })

我有下一个参考mysite.com/Account/Edit?userId=42

如何获得一个看起来像的网址mysite.com/Account/Edit/42

伊兹

在项目的App_Start文件夹下,您将有一个名为RouteConfig.csthis的文件,您可以在其中为应用程序指定自定义路由。

默认情况下,您将具有以下内容

routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );

如果您做类似的事情会被击中 Url.Action("Edit", "Account", new {id = user.Id})

如果你想以适应你的规则,你不想改变userIdid,那么你可以创建一个如下:

  routes.MapRoute(
            name: "EditRule",
            url: "{controller}/{action}/{userId}",
            defaults: new { controller = "Edit", action = "Account", userId = UrlParameter.Optional }
        );

注意:自定义规则应出现在默认规则之前,否则将击中默认规则

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

用部分视图更新asp.net MVc 4视图的一部分

发布表单Asp.net MVC的一部分

作为<form>一部分的输入字段破坏了我的ASP.NET应用程序

如何将 ASP.NET 控制器属性与当前 URL 的一部分绑定?

下一个MVC 6将成为ASP.NET 4.6或ASP.NET Core 1.0或两者的一部分吗?

ASP.NET表单提交模型的一部分

表单仅在 ASP.NET Core 中发布模型的一部分

C#Asp.net Site.css编译时缺少一部分

RouteExistingFiles不再是asp.net 5的一部分吗?

找不到路径的一部分-ASP.net/C#图片上传

当一部分URL已经是另一条路由时,在ASP.NET Core 3.1中进行动态路由

ASP.NET Core MVC5 - 完成操作后重定向到视图中的同一部分?

用户成功登录后刷新页面的一部分(ASP.NET MVC4)

是否可以使ASP.NET页面使用不同的DOCTYPE呈现页面的一部分?

ASP.NET Core 2.1 文件上传 DirectoryNotFoundException:找不到路径的一部分

ASP.NET核心路由将第一部分与通配符结尾匹配

ASP.NET WebAPI的哪一部分负责将动态解析为JObject

如何使用asp.net将HTML页面构建的一部分转换为PDF

为什么该URL的最后一部分对于ASP.NET Webforms不为空?

尝试使用Response.TransmitFile在ASP.Net中下载文件时显示“找不到路径的一部分”

找不到路径“ C:\ Users \ Username \ Desktop \ GPUpdate.xlsx”的一部分。仅在IE ASP.NET中

ASP.NET/Identity错误:实体类型ApplicationUser不是当前上下文模型的一部分

C是.NET框架的一部分吗?

哪个“ C ++可再发行文件”作为.NET Framework 3.5和4的一部分安装?

将参数作为查询字符串或 url 的一部分传递?

如何处理/修改用于 asp.net 核心外部登录的传出身份验证 cookie(作为 /signin-oidc 重定向的一部分生成)?

url 作为参数?在 ASP.NET 核心

在asp.net中传递URL参数

URL中的ASP.NET传递参数