【问题标题】:Chevrons in Routing URLs with WebForms 3.5使用 WebForms 3.5 路由 URL 中的 V 形
【发布时间】:2009-07-31 22:13:57
【问题描述】:

我刚刚升级了旧的基于通配符映射的 URL 系统以使用 System.Web.Routing。之前,我能够请求 URL /Service/GetItems<My.Full.Item.Type>,它在另一端被解析并返回了你所期望的。这很整洁。

现在启用路由,任何带有 的请求都会返回 '/' 的内容,而不是我想要的页面。即使我将这些编码为 %3C 和 %3E,我也会被重定向到根目录,而不管 URL 的其余部分是什么。

如果我不必通过我的应用程序更改所有直观通用引用的实例到我想出的临时解决方案:/Service/GetItems/T=My.Full.Item.Type,我会很高兴。也没有那么好。

谢谢大家!

【问题讨论】:

    标签: webforms routing url-routing


    【解决方案1】:

    您似乎遇到了 URL 的受限字符问题。请注意,这与路由无关,而是与 ASP.NET 阻止 URL 中的某些字符有关。

    为什么以前可以使用 URL 重写?很可能是因为 URL 被重写以在查询字符串中包含这些字符,然后才将其传递给 ASP.NET。

    您可以尝试一些事情。

    有一个注册表设置允许限制字符http://support.microsoft.com/kb/820129

    这是另一篇相关的支持文章:http://support.microsoft.com/default.aspx?scid=kb;EN-US;826437

    在 ASP.NET 4 中,我们计划使其更易于配置。

    【讨论】:

    • 非常感谢菲尔的回答!很高兴知道正在发生的事情背后的原因,我将研究这些文章以获得最终解决方案。再次感谢。
    猜你喜欢
    • 2010-10-24
    • 1970-01-01
    • 1970-01-01
    • 2016-10-04
    • 1970-01-01
    • 1970-01-01
    • 2011-07-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多