建立单独的解决方案来开发DNN模块
為DNN模塊建立單獨的解決方案就可節省大量的時間了。建立單獨的解決方案進行模塊開發需要解決三個問題:
1、在什么地方建立解決方案有助于邊開發邊測試?
2、如何對原有dll進行引用,生成的dll又到那個目錄中?
3、怎樣進行調試?
我建立DNN模塊開發環境的順序如下:
一、建立模塊項目
1、在DNN程序的DesktopModules目錄下建立DNN模塊項目,項目名稱為模塊名稱。
2、重名命名項目名稱為“公司名.模塊名稱”。如果您的項目名稱為“公司名.模塊名稱”就可以省略這一步。不過我不喜歡模塊所在文件夾的名字為“公司名.模塊名稱”。
3、引用“DNN程序的bin目錄”中DotNetNuke.dll組件。
4、配置項目屬性:
1)、修改程序集名稱為“公司名.Modules.模塊名稱”
2)、導入一些默認命名空間,如果不做這一步就需在單個源代碼文件中用Imports語句導入所使用命名空間(我喜歡單獨導入)。
3)、設置項目輸出路徑為“DNN程序的bin目錄”,這樣可以將編譯所得的dll文件直接復制到運行目錄中,以免每次都要手動復制。
5、創建模塊控件文件ascx,一般都有三個ascx文件:模塊名稱.ascx、Edit模塊名稱.ascx和Settings.ascx。在類庫類型的項目中不能直接添加“用戶控件”,我是從別的地方復制過來后在修改,希望知道更好的方法。
6、在模塊目錄下建立App_GlobalResources目錄,用來放語言資源文件。
二、建立模塊相關的SqlDataProvider項目(有些模塊不需要訪問數據庫,那么這一步也可以省了)
1、在模塊目錄下的Providers\DataProviders目錄下建立DNN模塊SqlDataProvider項目,項目名稱為“SqlDataProvider”。
2、重名命名項目名稱為“公司名.模塊名稱.SqlDataProvider”。
3、引用“DNN程序的bin目錄”中DotNetNuke.dll組件和Microsoft.ApplicationBlocks.Data.dll組件。
4、引用“DNN程序的bin目錄”中對應模塊組件“公司名.Modules.模塊名稱.dll”。注意:在這里不能直接引用模塊項目而需要引用模塊組件,主要是因為引用模塊項目會引起生成時的一個錯誤。大家可以試試直接引用模塊項目,看看會不會有問題。
5、配置項目屬性:
1)、修改程序集名稱為“公司名.Modules.模塊名稱.SqlDataProvider”
2)、導入一些默認命名空間。
3)、設置項目輸出路徑為“DNN程序的bin目錄”。
仍然存在的問題:因為該項目是引用的模塊組件,所當模塊項目重新編譯后需要重新再次引用。
三、在DNN中設置運行環境
1、利用host身份登錄,在“主機管理-->模塊定義”中“增加新定義”。
2、保存后在添加相關的控件,比如查看、編輯和設置控件。具體每個控件都用什么樣的key和類型,可以參照其它模塊中的設置。
四、調試程序
有一篇文章有詳細介紹:http://esshs.cnblogs.com/leeichang/archive/2004/11/16/64418.html
默認情況下,ASP.NET 進程(對于 Windows 2000 和 Windows XP 上的 IIS 5.0 和 IIS 5.1 為 aspnet_wp.exe,對于 Windows Server 2003 上的 IIS 6 為 w3wp.exe)作為 ASPNET 進程運行。因此,要調試它,您必須具有運行 ASP.NET 的計算機的管理員特權。
其實我們還可以利用dnnjungle的模板來建立DNN模塊項目,我試用了一下,它默認生成的代碼和DNN自帶模塊的代碼風格不太一致,我需要改好多地方所以沒有采用,大家有興趣可以試試。歡迎交流試用心得!
轉載于:https://www.cnblogs.com/wliang22/archive/2008/05/28/1208962.html
總結
以上是生活随笔為你收集整理的建立单独的解决方案来开发DNN模块的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DW8.0 和 PS8.0 vmware
- 下一篇: ABAP学习-第二章[HELLO WOR