所以,我开发了一个很棒的模块,并在多个页面上集成了整个安装。 第二天是客户,他们希望将另一个视图添加到模块中。所以我构建了另一个模块定义。问题是,现在我必须再次安装整个模块并删除所有其他(现在很多)模块定义,但最新的除外。
有办法解决这个问题吗?我甚至更愿意通过编程来实现,通过代码方式向页面添加新的模块定义。
编辑:
例如,我有一个安装了模块的页面。然后该页面将具有以下模块定义:
ModuleDefinitionA
ModuleDefinitionB
ModuleDefinitionC
现在我通过添加另一个模块定义来更新我的模块,我必须再次在页面上安装它:
ModuleDefinitionA
< - 来自之前的安装ModuleDefinitionB
< - 来自之前的安装ModuleDefinitionC
< - 来自之前的安装ModuleDefinitionA
< - 来自新安装ModuleDefinitionB
< - 来自新安装ModuleDefinitionC
< - 来自新安装ModuleDefinitionD
< - 新安装中的新定义 如何在不添加所有其他重复模块定义的情况下仅添加ModuleDefinitionD
?
(不是DNN模块开发的新手)
答案 0 :(得分:0)
我不认为你问的是可能的。记住DNN模块是DotNet代码,它是编译代码,因此每当添加新的View(ascx控件)或对项目代码进行更改时,必须使用Visual Studio(或类似工具)重新编译该模块,然后重新安装。增加模块版本号,DNN会注意到它是升级版,只运行与模块版本号匹配的sql脚本。
另外,当您更新模块时,模块的每个正在运行的实例都会更新,因此您不必删除然后将模块重新添加回页面。