asp.net-mvc – Stack Overflow问题路由
发布时间:2020-05-25 04:48:04 所属栏目:asp.Net 来源:互联网
导读:如果您查看SO问题URL,您将看到ID和“SLUG”被传递给Questions控制器: https://stackoverflow.com/questions/676934/what-do-you-need-to-write-your-own-blog-engine.我感到有趣的是您可以更改URL的“SLUG”部分,而不会影响应用程序的路由能力请求 example.
|
如果您查看SO问题URL,您将看到ID和“SLUG”被传递给Questions控制器: https://stackoverflow.com/questions/676934/what-do-you-need-to-write-your-own-blog-engine.我感到有趣的是您可以更改URL的“SLUG”部分,而不会影响应用程序的路由能力请求 example.我能想到的唯一方法就是接受一个id和一个“SLUG”的路由,并在slug上使用路由约束来确保它遵循一个模式.我不得不使用约束来确保这两个变量不会导致此路由匹配所有请求.有没有人有更好的方法来实现这一点,或任何更高级的路由方案的例子? 加成: 我意识到SLUG是为了人类的可读性,我想在另一个应用程序中复制此功能.实现这一目标的最佳方法是什么? 路线: routes.MapRoute(
"Id + Slug",// Route name
"Test/{id}/{slug}",// URL with parameters
new // Parameter defaults
{
controller = "Test",action = "Details",id = "",slug = ""
},new { slug = new SlugConstraint() }
);
简单约束: public class SlugConstraint : IRouteConstraint
{
public bool Match(HttpContextBase httpContext,Route route,string parameterName,RouteValueDictionary values,RouteDirection routeDirection)
{
string value = values[parameterName].ToString();
return value.Contains("-");
}
}
解决方法是 this你正在寻找…它没有定义最后的slu ..(编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – HttpContext的Cache和Items Properties有什么区
- 启动asp.net输出缓存
- 获取会话在ASP.NET中优雅地过期
- asp.net – Handles子句需要在包含类型或其基类型之一中定义
- asp.net-mvc – 防止在ASP.NET MVC中缓存属性,每次执行一个
- asp.net – SQL Server 2005 – 您应该多久重建一次索引?
- asp.net-mvc-3 – mvc3 httpshttp
- asp.net-mvc-3 – 如何重定向到一个URL?
- asp.net – GridView不记得回发之间的状态
- ASP.NET – 从静态方法/静态类访问会话?
推荐文章
站长推荐
- asp.net-mvc – MVC 3 RC中的Razor Helper
- 在ASP.Net MVC中控制JsonResult中的序列化器也称
- asp.net-mvc – 无法更改关系,因为一个或多个外键
- asp.net-mvc – 在没有EF的情况下在appsettings.
- asp.net – 有关视图模型和模型更新的一些子集的
- asp.net – User.Identity.GetUserId()方法无法在
- asp.net – 在负载均衡器上启用粘性会话
- asp.net – WCF安全 – 我不明白的列表
- 动态加载asp.net网站中的用户控件(ascx)
- asp.net-mvc – ASP.NET MVC:如何从Html.Action
热点阅读
