如何重定向到 DotnetNuke 中的另一个视图(UserControl '.ascx')?

How to redirect to another View(UserControl '.ascx') in DotnetNuke?

我是 DotnetNuke 的新手。我不知道 DotnetNuke 的所有术语。请纠正我。这将帮助我提高。

我创建了一个带有 2 个 UserControl 的简单项目。 1- View.ascx, 2- ModuleInfo.ascx

1- View.ascx: 它包含一个按钮。我想将它重定向到另一个用户控件 ModuleInfo.ascx 这是代码。

protected void btn1_Click(object sender, EventArgs e)
{
    Response.Redirect(DotNetNuke.Common.Globals.NavigateURL("ModuleInfo"), true);
}

2- ModuleInfo.ascx 它包含静态 table。

我如何将模块添加到 DotnetNuke:

1- Add .zip file of build project to Admin --> Extension
2- Edit Module from Host --> Extension --> Edit Module --> Edit Definition --> Add Module Control --> Added key "ModuleInfo" and selected view.
3- Created new page and added module to it. 

当页面加载时,View.aspx 没问题。有一个按钮。但是当我点击按钮时,它会重定向到某个页面,但它是空白的。它应该显示 Table.

如果我遗漏了什么,有人可以给我建议吗?

NavigateUrl 必须在附加参数中包含 tabId 和 moduleId 才能工作。导航到模块内部视图的更简单方法是简单地使用 base.EditUrl() ,它只需要视图的 controlKey。请看下面的代码片段,设置 miUrl 的两行是等价的。

protected void btn1_Click(object sender, EventArgs e)
{
    string miUrl = base.EditUrl("ModuleInfo");
    string miUrl = DotNetNuke.Common.Globals.NavigateURL(base.TabId, "ModuleInfo", String.Format("mid={0}", base.ModuleId));

    Response.Redirect(miUrl, true);
}