asp.net-mvc-routing – 在MVC 6控制器中使用urlhelper生成链接(vNext)
|
我正在尝试学习新的MVC 6.我之前从未使用过Microsoft MVC框架.
this.Url.Action("Get",new {id = id});
我得到一个带URL的查询字符串.我想要一个更安静的URL. 我想在使用属性路由时,我不必映射特定的路由,就像我在WebApi的旧教程中看到的那样. 我必须映射路线吗? 解决方法您可以在控制器中为路由属性添加名称,然后使用扩展方法IUrlHelper.RouteUrl生成URL.例如,给定以下web api控制器: [Route("api/[controller]")]
public class UsersController : Controller
{
// GET: api/users
[HttpGet]
public IEnumerable<string> Get()
{
return new string[] { "value1","value2" };
}
// GET api/users/5
[HttpGet("{id}",Name ="UsersGet")]
public string Get(int id)
{
return "value";
}
//additional methods...
}
您可以使用@ Url.RouteUrl(“UsersGet”,new {id = 123})为特定的id by id动作生成url api / users / 123. 使用Url.Action扩展方法时的问题是,如果你有一个像上面例子中的控制器,有2个名为“Get”的动作,这将使用没有参数的动作的路由并生成/ api / Users?id = 123 .但是,如果您对该方法发表评论,您会看到@ Url.Action(“获取”,“用户”,新{id = 123})也为您提供了预期的网址. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 如何确定请求是否是回发的结果?
- asp.net jQuery Ajax用户登录功能的实现
- asp.net-mvc – ASP.Net MVC Action方法编译Razor cshtml文
- asp.net-mvc – Html.BeginForm()与GET方法
- ASP.NET Web应用程序(MVC)部署自动化和Subversion
- asp.net – 如何从SQL数据库流.flv文件
- asp.net-mvc – MVC6自托管wwwroot内容返回404,IIS Express
- asp.net-mvc – 如何在ASP.NET MVC 3中更新复杂模型
- asp.net – UpdatePanel中的动态创建控件?
- asp.net – 确定哪个UpdatePanel导致部分(异步)PostBack?
- asp.net:runat =“server”和服务器控件之间的区
- asp.net-mvc – MVC3中的CheckboxList查看并获取
- asp.net-mvc – 使用MVC Web应用程序时Nhibernat
- ASP.NET代码隐藏中的当前工作目录 – 我们可以依
- ASP.NET ReportViewer Google Chrome CPU使用情况
- 如何在ASP.NET MVC中测试自定义模型绑定器?
- asp.net-mvc – ASP.NET MVC泛型基础视图类
- asp.net-mvc – ASP.net身份在删除外部帐户后停止
- 如何从asp.net中的javascript调用codebehind函数
- ASP.Net核心 – 获取帖子表格的所有数据
