我在本地机器上有一个 DotNetNuke 网站的副本,我在其中添加了一些页面并创建了新模块。我必须将这些新页面移至生产环境,因此已将这些页面复制到相应的文件夹中。我知道在生产数据库上也有很少的数据库条目来识别生产中的这些页面和模块。
请告诉我如何在生产网站上注册这些页面
我在 Google 上进行了搜索,但可能是我没有找到正确的关键字来搜索。目前我必须将我的本地数据库恢复到生产环境以运行这些页面。我正在使用第 7 版的 DNN
我在本地机器上有一个 DotNetNuke 网站的副本,我在其中添加了一些页面并创建了新模块。我必须将这些新页面移至生产环境,因此已将这些页面复制到相应的文件夹中。我知道在生产数据库上也有很少的数据库条目来识别生产中的这些页面和模块。
请告诉我如何在生产网站上注册这些页面
我在 Google 上进行了搜索,但可能是我没有找到正确的关键字来搜索。目前我必须将我的本地数据库恢复到生产环境以运行这些页面。我正在使用第 7 版的 DNN
这不是 DNN 处理得很好的事情,从本地环境发布到生产环境。
最常见的方式(除了数据库的备份/恢复)是使用页面模板。您可以在 DNN 中“导出”一个页面,该页面将生成一个 XML 文档,其中包含引用到 portals/#/ 文件夹中的模块和内容(其中 # 是门户 ID)
您可以将该文件上传到您的生产站点(相同路径),然后基于该页面模板创建一个新页面。
添加模块 - 在生产环境中访问您的网站,以超级用户身份登录并安装模块,然后访问网站中的页面并添加它。与您对第 3 方模块所做的相同。这将正确地将信息添加到 db.
添加页面 - 您可以在代码中使用
要创建 DNN 页面(选项卡):
TabController tbc = new TabController(); //...populating the page's info tbc.AddTab(destinationTabInfo);
将 ascx 控件创建为全局(意思是不属于任何模块)ModuleControl。
var moduleControl = new ModuleControlInfo { ... populate the fields }; ModuleControlController.AddModuleControl(moduleControl);
您的问题意味着您正在创建 .aspx 文件并将其复制到生产服务器。这确实不是 DNN 的工作方式,您可能正在制造一个真正的混乱。
您是如何在本地站点上创建页面的?您是否使用 DNN 功能来创建新页面、向这些页面添加模块等?或者,你做了别的什么吗?
使用内置功能在您的本地安装上创建页面,就像 Chris