- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我通过 NuGet 将 Microsoft.Asp.Net.FriendlyUrls.Core.dll 安装到现有的 asp.net 4.5 Webforms 网站。
我的 RouteConfig 文件中有以下内容
public static void RegisterRoutes(RouteCollection routes)
{
var settings = new FriendlyUrlSettings();
settings.AutoRedirectMode = RedirectMode.Permanent;
routes.EnableFriendlyUrls(settings);
routes.MapPageRoute("frUrl", "frurltest/{id}", "~/frurltest.aspx");
}
**Global.asax**
void Application_Start(object sender, EventArgs e)
{
RouteConfig.RegisterRoutes(System.Web.Routing.RouteTable.Routes);
}
在 frurltest.aspx 中,我尝试从 RouteData 获取“id”,如下所示:
string id = String.Empty;
if (RouteData.Values["id"] != null)
{
id = RouteData.Values["id"].ToString();
}
Response.Write("id= " + id);
使用以下网址:http://localhost:48484/frurltest/2
我没有得到“id”的值。 RouteData.Values.Count=0。
知道我在这里错过了什么吗?
注意:除了获取路由数据之外,友好的 url 功能正在运行,即假设我导航到/frutltest.aspx,它被更改为/frutlest,我可以使用 $RouteUrl 生成链接。
更新:经过反复试验,我注意到如果我将 EnableFriendlyUrls 移到 MapPageRoute 之后,它就会起作用。即
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute("frUrl", "frurltest/{id}", "~/frurltest.aspx");
var settings = new FriendlyUrlSettings();
settings.AutoRedirectMode = RedirectMode.Permanent;
routes.EnableFriendlyUrls(settings);
}
我看到的所有示例都用作我最初的非工作代码。不知道为什么它对他们有用而不对我有用。这是一个类似的问题:RouteData.Values stays Empty
最佳答案
我知道现在回答已经太晚了,但对我来说,当我将 URL 的第一个子句更改为与 aspx 页面不同的内容时,它就起作用了。只是在 "frurltest/{id}"
和 "~/frurltest.aspx"
中,frurltest
应该不同,例如:routes .MapPageRoute("frUrl", "frurltestNEW/{id}", "~/frurltest.aspx");
关于asp.net - FriendlyURLs - RouteData 不返回任何值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25046377/
使用 ASP.Net 路由时,如何从代码隐藏中获取 RouteData? 我知道您可以从 RouteHandler 的 GetHttpHander 方法获取它(您将获得 RequestContext)
我试图在我的组件中接收 RouteData,但它没有像我预期的那样工作。我收到的消息是:ORIGINAL EXCEPTION: Invalid argument(s): No provider fou
令我惊讶的是,竟然没有文章详细回答这个问题。我有几个与 RouteData.Values[""] 相关的问题。 我看到了这段代码: public ActionResult Index() {
我的路线代码如下所示: RouteTable.Routes.MapPageRoute("IDP", "Person/{IDP}", "~/Person.aspx") 现在我想获取表单上的数据,通常它
给出以下代码: public class MyActionFilter : ActionFilterAttribute { public override void OnActionExecu
我通过 NuGet 将 Microsoft.Asp.Net.FriendlyUrls.Core.dll 安装到现有的 asp.net 4.5 Webforms 网站。 我的 RouteConfig 文
我正在开发一个 .net 核心应用程序。我正在尝试访问中间件中的路由数据,但它始终返回 null。 这是 Controller 基本路线 [Route("User/{UserId}/Quote")]
我正在自定义 Action Filter 中设置一些 RouteData filterContext.RouteData.Values.Add("accountId", accountId); fil
如果在使用 URL 路由时查询字符串中不存在以下语句,我将收到以下语句的 null 异常错误,我该如何处理以下语句的 NullReferenceException string lang = Rout
我正在尝试以编程方式将查询字符串映射到我在 RouteConfig.cs 文件中创建的 SEO 友好路由 URL,但似乎遇到困难。 我的路由配置如下所示: routes.MapRoute( n
我正在尝试更改我所有 Controller 的默认 ViewBag.Title,因此我想创建一个继承自 Controller 并在那里处理标题的基类: public class MyControlle
我正在构建一个连接到 Application_EndRequest/Application_BeginRequest 的简单性能记录器 我想将 action 和 controller 的名称作为某种
所以我创建了自己的 ControllerFactory 并重载了 GetControllerSessionBehavior 以扩展 MVC 行为。 为了完成我的自定义工作,我必须对调用的操作使用反射。
运行时出现错误 string quote = Page.RouteData.Values["quote"].ToString() ?? string.Empty; 错误:对象引用未设置到对象的实例。
当我尝试使用 TypeScript 在 Angular2 Beta 中使用 RouteData 时遇到问题。 我将它注入(inject)构造函数并正确导入 import {RouteConfig, R
我创建了一个新的 Web 窗体 (ASP.NET 4.5) 项目,我正在尝试让 URL 路由正常工作。 RouteConfig.cs 看起来像这样: routes.MapPageRoute("surv
我想使用 RouteConfig 将一个变量从我的 AppComponent 传递到 Coursescomponent,但是路由配置中的“data”属性只能传递常量参数,它无法识别“this”。有办法
如果我有这样的操作: public ActionResult DoStuff(List stuff) { ... ViewData["stuff"] = stuff; ...
我有使用 Microsoft.AspNet.FriendlyUrls 在 ASP.NET c# WebForms 中工作的路由,但 不是 对于所有页面。 下面是一个例子: routes.MapPage
我的 Global.asax 中有一条规则,如下所示: RouteTable.Routes.MapPageRoute("defaultRoute", "{*value}", "~/default.as
我是一名优秀的程序员,十分优秀!