使用单独的解决方案(类库)来开发DNN的模块-C#版本(2)
上次寫到使用VB類庫,開發DNN模塊,然后編譯成 .DLL文件;但是其中有個比較嚴重的問題沒有解決,就是控件的事件關聯不上去,比如我做的是一個發送mail的控件,發送按鈕的事件沒有反應,今天研究 了一上午也沒有解決,無奈之下換到 C#建一個類庫, 問題解決了。
步驟跟上一片文章大概相同 http://www.cnblogs.com/ttc/archive/2008/07/18/1246248.html,
主要不同點:
1、添加了一個 .ascx.designer.cs 文件,這樣就可以解決控件不存在的問題。
2、使用 VB的時候 “Inherits DotNetNuke.Entities.Modules.PortalModuleBase”這句話下面會出現藍色波浪線,
提示“未定義類型 ”;而C#就沒有這個問題。
3、如果使用 StarterKit 模板來做這個工作,那么 在 繼承 PortalModuleBase 這個類之后 ,會自動增加對 IActionable 接口的實現,
如:public partial class CS_TEST : PortalModuleBase, IActionable
?
?完成以上操作,編譯成功,在DNN網站中導入模塊,就可以實現發送mail的功能了。
使用 DotNetNuke_04.08.04_StarterKit.vsi 這個模板來開發,可以大大提高開發效率,不需要考慮控件不存在的問題;但是如果使用VB的模板,就會出現 80個錯誤,導致工程無法通過編譯,而用C#,就能編譯過去,原因是 VB模版默認工程引用的DotNetNuke.Library, 不是dotnetnuke.dll。
在此感謝 Baldwin 對我的幫助!
?
轉載于:https://www.cnblogs.com/ttc/archive/2008/07/21/1247645.html
總結
以上是生活随笔為你收集整理的使用单独的解决方案(类库)来开发DNN的模块-C#版本(2)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: expect监控 雏形 scp用法
- 下一篇: C#(.net)中的一次连接数据库执行多