我创建了一个 DNN 模块并将其添加到模块列表中。 现在我想调用它,我试过这个:
Response.Redirect(Globals.NavigateURL(this.TabId, "Control Key", "parameter"), true);
但它会打开默认页面,那是空的!
我的模块在哪里?!?!或者我的错误在哪里?!
最佳答案
您是否使用模块 - 添加模块将模块添加到页面?
如果将模块添加到页面,您可以使用 DotNetNuke.Common.Globals.NavigateUrl
的不同重载来为模块的不同控件构建 url。除了作为一个方便的助手,Globals.NavigateUrl
使用友好的 url 提供程序来正确格式化 url。
Response.Redirect(Globals.NavigateURL(this.TabId, "Control Key", "parameter"), true);
此重载重定向到“Control Key”模块控件,使用“parameter”作为附加查询字符串参数。参数“Control key”和“parameter”充当占位符,应替换为适当的值。
“参数”实际上传递给一个带有params 的形式参数。修饰符,params string[] AdditionalParameters
,可以采用字符串或数组格式的可变数量的参数。
如果要重定向到默认 View 控件,请使用重载
Response.Redirect(Globals.NavigateURL(TabId))
仅当您想从模块中的另一个控件返回到默认 View 控件时,在没有控制键或查询字符串参数的情况下重定向到 this.TabID
通常才有意义。
另见
关于c# - 如何导航到 DNN 中的模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11913034/