DNN做為一個功能強大的網站框架,它提供了提供了很多有用的類來為開發模塊提供方便,以下列出幾個和模塊開發緊密相關的類:
PortalModuleBase
說明:模塊基類。所有的模塊都是通過該類繼承而來。這個類定義了DNN模塊所要用到的方法和屬性。
命名空間:DotNetNuke.Entities.Modules
文件位置:Components\Modules\PortalModuleBase.vb
常用方法:
EditUrl:根據模塊定義的ControlKey獲取訪問相應控件的Url。我們要調用在模塊定義中定義的控件都可以通過該方法實現。
重載列表
Public Function EditUrl() As String;默認調用ControlKey=Edit的控件,不傳遞參數,一般用於新建。
Public Function EditUrl(ByVal ControlKey As String) As String;調用指定ControlKey的控件。
Public Function EditUrl(ByVal KeyName As String, ByVal KeyValue As String) As String;調用ControlKey=Edit的控件,可傳遞一個名為KeyName值為KeyValue的參數。如編輯文章時,我們就可以通過EditUrl("ArticleID",ArticleID)的方法調用編輯文章的控件
Public Function EditUrl(ByVal KeyName As String, ByVal KeyValue As String, ByVal ControlKey As String) As String;調用指定ControlKey的控件,並傳遞名為KeyName值為KeyValue的參數。比如:在查看文章時,我們定義一個ControlKey=Show的控件,然後通過EditUrl("ArticleID",ArticleID,"Show")的方法就可以調用文章查看控件了.
Public Function EditUrl(ByVal KeyName As String, ByVal KeyValue As String, ByVal ControlKey As String, ByVal ParamArray AdditionalParameters() As String) As String;當有多個參數需要傳入控件的話,我們就需要用這個方法。比如:我們在查看控件的時候需要,在傳入一個A參數,那麼我們可以通過EditUrl("ArticleID",ArticleID,"Show","A=Avalue"),如果還要傳遞更多參數,可以通過先定義一個string數組,然後將需要傳遞的參數,存到這個數組中。
如:
Dim params(2) As String
params(0) = "A=Avalue"
params(1) = "B=Bvalue"
strUrl = EditUrl("ArticleID",ArticleID,"Show",params)
屬性:
Actions;模塊所具有的操作集合,可以通過實現IActionable接口來定義模塊操作,如:添加一個“新建文章”的操作。這些操作將會顯示到模塊的以下位置: