gpt4 book ai didi

c# - RouteData.Values 保持为空

转载 作者:太空狗 更新时间:2023-10-30 00:51:52 27 4
gpt4 key购买 nike

我的路线代码如下所示:

 RouteTable.Routes.MapPageRoute("IDP", "Person/{IDP}", "~/Person.aspx")

现在我想获取表单上的数据,通常它是这样工作的:

int id = Convert.ToInt32(Page.RouteData.Values["IDP"]);

但每次我尝试从路线获取数据时,例如:http://PC-81/SkillDatenbank/Person/1我没有从值中得到任何数据(它是空的!)

我正在使用 ASP.Net 4.5 和 Web 窗体。编辑:我创建了一个新项目并进行了测试,但它也没有用我究竟做错了什么?在上一个项目中,它确实是这样工作的:(你能帮帮我吗?

最佳答案

您的问题可能出在您的路由表中。我创建了一个 WebForms 项目来对此进行测试。

打开您的 Global.asax(或您存储 RouteConfig 的任何位置;默认为 App_Start/RouteConfig.cs)并检查您的 RegisterRoutes 方法。向其中添加以下行(如果它不存在的话)。

void RegisterRoutes(RouteCollection routes)
{
var settings = new FriendlyUrlSettings();
settings.AutoRedirectMode = RedirectMode.Permanent;
routes.EnableFriendlyUrls(settings);

/* ... additional routes */
routes.MapPageRoute("","Person/{IDP}", "~/Person.aspx");
}

如果您在 App_Start 文件夹中使用默认配置,在您的 Application_Start 中应该有这样一行:RouteConfig.RegisterRoutes(RouteTable.Routes);

如果您在 global.asax.cs 中定义了路由,它只是 RegisterRoutes(RouteTable.Routes);

如果您现在通过 http://PC-81/SkillDatenbank/Person/1 访问您的页面,RouteData 字典将包含一组数据,如下所示:

enter image description here

关于c# - RouteData.Values 保持为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24632979/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com