我有一个名为menu的页面,该页面的url是mysite.com/menu。
我希望菜单页面上的模块根据此网址加载内容... mysite.com/menu/starters其中'starters'是内容过滤器。
所以,我已将此添加到我的siteurls.config文件中......
<RewriterRule>
<LookFor>.*/menu/([a-zA-Z0-9_-]+)</LookFor>
<SendTo>/menu</SendTo>
</RewriterRule>
...当我在菜单页面的模块中运行此代码时确实......
Dim url As String = Request.RawUrl
If url.Contains("menu/pig-skin") Then
txtField.Text = "pig-skin has been selected"
Else
txtField.Text = "No extra url parts."
End If
......满足条件并且'猪皮被选中'显示。
所以一切正常。除了,当我从siteurls.config文件中退出时,清除现金然后重新启动应用程序,一切运行完全相同。我希望它抛出一个页面无法找到错误。为什么它仍然有效?
我甚至不确定我是否正确地这样做了。如果我的代码甚至没有关闭,我该如何实现?
感谢您抽出宝贵时间。
答案 0 :(得分:0)
你真的应该看一下模块的URL Provider模块,假设你正在使用DNN 7.1+(我建议至少7.2.1,如果不是7.2.2)
否则DNN只是加载它知道的页面,其余的URL基本上被忽略了。
编辑:现在最好的阅读材料可能是:http://www.dnnsoftware.com/blog/cid/154604/introducing-dnn-extension-url-providers