DotNetNuke嵌套控件重定向方法

DotNetNuke嵌套控件重定向方法,dotnetnuke,url-redirection,Dotnetnuke,Url Redirection,有没有发现这一点的DNN开发人员? 我有一个用户控件(ascx)(DotNetNuke扩展)和4个用户控件。第一个视图窗体上有一些按钮可以访问其他视图窗体。 访问其他控件时,可以从该控件访问其他控件。我正在寻找最好的方法将用户重定向回用户所在的上一个控件,而不管控件的“级别” 这里有一个例子 1) 第一视图表单:人员列表 可用按钮: 2) 用户地址 3) 用户下载 4) 用户视频 5) 另一个与用户相关的模块 假设我选择了2)个用户地址 在该用户控件上,我有3、4和5个按钮 如果我想返回到第一个

有没有发现这一点的DNN开发人员? 我有一个用户控件(ascx)(DotNetNuke扩展)和4个用户控件。第一个视图窗体上有一些按钮可以访问其他视图窗体。 访问其他控件时,可以从该控件访问其他控件。我正在寻找最好的方法将用户重定向回用户所在的上一个控件,而不管控件的“级别”

这里有一个例子

1) 第一视图表单:人员列表

可用按钮:

2) 用户地址 3) 用户下载 4) 用户视频 5) 另一个与用户相关的模块

假设我选择了2)个用户地址

在该用户控件上,我有3、4和5个按钮

如果我想返回到第一个视图控件(1),我只需使用DotNetNuke.Nvigation.NavigateURL并传入我所查询的用户的参数。那很好

但现在我选择了用户下载,而不是回到1 当用户点击“返回”按钮转到上一屏幕(不是浏览器返回按钮;这是我表单上的按钮)时,我想返回2)用户地址,而不是返回第一个视图控件(1)

我尝试将first view控件添加为同一扩展中的另一个控件,并使用EditURL调用它,但重定向时屏幕显示为空白(DNN菜单等除外)

如何将用户重定向到上一个控件,而不是模块的第一个控件

如果这不合理,请让我知道,我会尽力更好地解释


谢谢。

您可能希望将请求中的querystring参数传递给各个控件,以便跟踪它们的位置以及如何返回

例如:

尝试调用ctl=controlvalue&prevvalue=edit,而不只是调用ctl=controlvalue

然后,您可以连接返回代码以使用“prevvalue”的querystring值


克里斯

在上查看我的DNNHero.com视频教程。我给出了不同的模块视图导航方法的代码和说明

我决定为此编写一个自定义解决方案。它工作得很好,但有点复杂

1) 我编写了一个SourceType枚举来列出应用程序中的不同表单

2) 任何页面都可以用作“基本页面”。在加载表单时,我在“基本页面url”的设置中读取一个属性,如果它还不存在,我会将基本页面的rawurl与它所在表单(SourceType)的枚举值一起写入设置

3) 由于子控件都使用与基本页相同的设置,因此每当进行导航时,我都会将基本页的枚举值传递给新表单;在新表单中,我会在新表单的页面加载中读取基本页URL,如果当前表单的枚举值与传入的枚举值不同(实际为),我将该基本URL用于链接“back”

4) 如果用户从第二个表单转到另一个表单,该过程将重复。但是我将两个“prevous”表单枚举传递给第三个表单,因此它显示了两个可供选择的链接

5) 这可以尽可能长时间地重新编写。需要注意的一点是:在将SourceForms属性传递回以前的表单之前,必须从SourceType枚举中删除当前表单;如果不这样做,则来自的表单也将被列为不需要的“返回”表单

希望这能帮助那些在一个模块中的多个控件中难以找到干净的DNN重定向解决方案的人


如果不清楚,请联系我,我将显示一些代码。

这是一项付费服务;80美元——它是否显示了如何在同一dnn扩展中上下导航模块控件链?我知道基本视图导航,其区别是导航到上一个控件,同时始终跟踪其上一个控件回到链中的第一个原始控件?我相信我必须编写此自定义。