【问题标题】:Urlrewriting.net pages are not causing postbacksUrlrewriting.net 页面不会导致回发
【发布时间】:2009-09-15 14:54:52
【问题描述】:

我正在使用带有 UrlRewriting.Net 的网络表单来重写页面,例如

http://www.example.com/stuff.aspx?c=30
变为
http://www.example.com/stuff/30-this-stuff.aspx

只要加载了正确的内容,它就可以工作;但是,所有回发都不起作用(主要是页面上的按钮)。如果我在Page_Load 上设置断点,我会看到IsPostBack 始终为假。有想法该怎么解决这个吗?现在我只是在 Visual Studio 2008 上。

编辑: 我已经切换到UrlRewriter.Net,经过一些调整(参见Scott Gu's article)。除此之外,我已经将我最初的问题发布到开发者论坛:如果我得到答案,我会在这里发布(除非先在这里发布)。

【问题讨论】:

    标签: asp.net webforms url-rewriting postback urlrewriting.net


    【解决方案1】:

    您需要确保它正在执行称为 ClientRebaseing 的操作,以确保 .NET 看到的是新 URL 与旧的原始 URL。有关详细信息,请参阅此帖子:

    http://www.ifinity.com.au/Blog/Technical_Blog/EntryId/46/Why-does-Url-Rewriting-break-all-my-image-links

    我也不知道 UrlRewriting.NET 是否支持此功能,但我自己的基于 Apache mod_rewrite 的 URL 重写器确实支持重新定位客户端路径。

    http://urlrewriter.codeplex.com

    【讨论】:

    • 一个有趣的阅读,但不幸的是不是问题的根本原因。
    【解决方案2】:

    我可能会离开这里,但我参与了一个使用 UrlRewriter.Net 的项目,据我记得,我认为您遇到的问题不是重写表单元素的 action 属性。查看您的来源并查看<form action"..." ... /> 中的 URL 是否与您地址栏中的相同。我不知道我们是如何做到这一点的,因为它是在另一份工作中,并且那里的技术负责人编写了代码来做到这一点,但我想你会更改表单标签的呈现。

    【讨论】:

    猜你喜欢
    • 2018-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多