【问题标题】:Deployment of new pages from Local to Production将新页面从本地部署到生产
【发布时间】:2014-09-26 23:13:45
【问题描述】:

我在我的本地机器上有一个 DotNetNuke 网站的副本,我在其中添加了一些页面并创建了新模块。 我必须将这些新页面移至生产环境,因此已将这些页面复制到相应的文件夹中。我知道在生产数据库中也需要创建很少的数据库条目来识别生产中的这些页面和模块。

请告诉我如何在生产网站上注册这些页面

我在 Google 上进行了搜索,但可能是我没有找到正确的关键字进行搜索。目前我必须将我的本地数据库恢复到生产环境以运行这些页面。我使用的是第 7 版 DNN

【问题讨论】:

    标签: dotnetnuke dotnetnuke-7 dev-to-production dotnetnuke-settings


    【解决方案1】:

    这不是 DNN 处理得很好的事情,从本地环境发布到生产。

    最常见的方式(除了备份/恢复数据库)是使用页面模板。您可以在 DNN 中“导出”一个页面,这将生成一个 XML 文档,其中包含引用到 portals/#/ 文件夹中的模块和内容(其中 # 是门户 id)

    您可以将该文件上传到您的生产站点(相同路径),然后基于该页面模板创建一个新页面。

    【讨论】:

    • 哦!让我试试这种方式,我无权访问部署服务器。可能是我必须写下步骤并将其提供给客户。你能帮我具体的步骤吗?
    【解决方案2】:

    您的问题暗示您正在创建 .aspx 文件并将其复制到生产服务器。这确实不是 DNN 的工作方式,您可能正在制造一个真正的混乱。

    您是如何在本地网站上创建页面的?您是否使用 DNN 功能来创建新页面、向这些页面添加模块等?或者,你做了其他事情吗?

    使用内置功能在本地安装上创建页面,就像 Chris 一样

    【讨论】:

      【解决方案3】:

      添加模块 - 在生产环境中访问您的网站,以超级用户身份登录并安装模块,然后访问网站中的页面并添加它。与您对第 3 方模块所做的相同。这将正确地将信息添加到 db。

      要添加页面 - 您可以在代码中使用

      1. 创建 DNN 页面(选项卡):

        TabController tbc = new TabController();
        
        //...populating the page's info 
        
        tbc.AddTab(destinationTabInfo);
        
      2. 将ascx控件创建为全局(意思是不属于任何模块)ModuleControl。

        var moduleControl = new ModuleControlInfo
                            {
                               ... populate the fields
                            };
        
        ModuleControlController.AddModuleControl(moduleControl);
        

      【讨论】:

        猜你喜欢
        • 2018-09-08
        • 2015-04-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-02
        • 1970-01-01
        相关资源
        最近更新 更多