【问题标题】:DotNetNuke Add Action to Module Menu with custom urlDotNetNuke 使用自定义 url 将操作添加到模块菜单
【发布时间】:2013-03-08 01:54:42
【问题描述】:

我正在为 DNN 05.04.02 构建一个自定义模块。 我想向模块添加自定义操作以下载提交的文件。我能够让链接出现,但 url 参数是一个谜。我已经尝试了几十种组合,它要么导致我找不到页面,要么是一个没有错误的空白页面,这是不正确的。我想要访问的页面名为 Download.ascx,我所做的所有工作都基于 Visual Studio DNN 模块模板。我的 url 参数缺少什么?

来自:ViewDataValidation.ascx

public ModuleActionCollection ModuleActions
        {
            get
            {
                ModuleActionCollection Actions = new ModuleActionCollection();
                Actions.Add(GetNextActionID(),
                    "Download Validated Files",
                    "Download",
                    "",
                    "edit.gif",
                    EditUrl("Download"),
                    false,
                    DotNetNuke.Security.SecurityAccessLevel.Admin,
                    true, false);
                return Actions;
            }
        }

【问题讨论】:

  • 发现问题是我必须将用户控件添加到模块定义中并给它一个唯一的键。 @bdukes 提供的链接介绍了如何做到这一点。我还用我的最终代码编辑了上面的代码。为什么 DNN 让一切变得如此困难?

标签: c# asp.net dotnetnuke dotnetnuke-module


【解决方案1】:

看看 Joe Brinkman 的 blog post exploring all of the functionality of the actions。看起来 URL 属性需要一个绝对 URL(即以 http:// 开头的东西)。

还可以选择触发服务器端事件,然后您可以使用该事件手动进行重定向,如果这样更容易的话。

如果您要导航到内部页面,您也可以尝试传入调用 Globals.NavigateURL(tabId) 的结果。

【讨论】:

  • 感谢您的链接。我不知道您必须手动注册一个控件才能使用它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-24
  • 1970-01-01
  • 1970-01-01
  • 2013-08-02
  • 1970-01-01
相关资源
最近更新 更多