2011-07-28 69 views
2

我正在为DNN 05.04.02建立一个自定义模块。 我想添加一个自定义动作到模块下载提交的文件。我能够得到链接出现,但url参数是一个谜。我已经尝试了几十种组合,并且要么导致我找不到页面,要么导致没有错误的空白页面不正确。我想要访问的页面被称为Download.ascx,我所做的所有工作都基于Visual Studio DNN模板模板。我缺少的url参数是什么?DotNetNuke添加行动到模块菜单与自定义网址

来源: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; 
      } 
     } 
+0

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

回答

2

看看乔·布林克曼的blog post exploring all of the functionality of the actions。它看起来像URL属性期望一个绝对的URL(即以http://开头的东西)。

还有一个选项可以触发服务器端事件,然后您可以使用该事件手动执行重定向,如果这样会更容易。

如果您正在导航到内部页面,您可能还会尝试传入调用Globals.NavigateURL(tabId)的结果。

+0

感谢您的链接。我不知道你必须手动注册一个控件才能使用它。 – ChrisOPeterson

相关问题