DNN模块开发系列文章(2)——建立模块开发项目

建立模块开发项目

开发DNN模块可以通过两种开发环境来进行:

一、在整个DNN解决方案下建立模块开发项目。

优点:可以方便的引用DNN组件,参考其他模块的实现方式,可以随时通过“转到定义”的操作查看DNN中该方法的定义,调试起来也比较容易。

缺点:速度慢。打开项目和编译项目都要费大量时间。

二、用单独的方式建立模块解决方案。

优缺点正好和第一种相对,不过在实际开发中速度是关键,下面我就单独讲讲我在以单独方式建立模块开发解决方案中的一些心得。

建立单独的解决方案进行模块开发需要解决三个问题:

1、在什么地方建立解决方案有助于边开发边测试?

2、如何对原有dll进行引用,生成的dll又到那个目录中?

3、怎样进行调试?

欲善其事,必先利其器。首先,我们应该为开发DNN模块准备以下工具:

DNN Project Templates :一个由dnnjungle提供的VS.NET 2003下的功能插件。安装后,可以直接通过它在VS环境来创建DNN项目和一些DNN中所用的项。

CodeSmith Templates:一组生成DNN模块业务逻辑层代码和数据访问层代码所用到的,CodeSmith代码生成模板。

CodeSmith:代码生成工具,结合上述模块,可以大大加快代码编写工作。(http://www.codesmithtools.com/)

相关网址:http://dnnjungle.vmasanas.net/Development/Templates/tabid/28/Default.aspx

当上面的工具都安装好后就可以开始我们的模块开发工作了。该模块用VS.NET 2003开发环境,以DNN3.3.3做为平台,数据库使用SQL Server数据库。

1、创建DNN模块表示层项目。运行VS,创建DNN模块开发项目。如果,你安装好DNN Project Templates后,在创建新项目时,在项目类型处将会出现“Visual Basic Project for DotNetNuke 3”和“Visual C# Project for DotNetNuke 3”这两个新项目。在这里我选择VB.NET作为开发语言,其实用C#是一样可以开发DNN模块的。选择“DNN Module”模板,项目名称设置为:Article,项目位置选择DNN程序所在文件夹的DesktopModules目录,这样有利于边开发边测试。如下图:

文章(2)——建立模块开发项目-tiny dnn 安卓开发">
2、创建DNN模块数据访问层项目。点击添加“新项目”,选择“DNN SqlDataProvider DAL”,项目名称为:Article。项目位置:DesktopModules\Article\Providers\DataProviders。如下图:

时间: 2025-01-19 19:08:54

DNN模块开发系列文章(2)——建立模块开发项目的相关文章

DNN模块开发系列文章(1)——分析设计

序 DNN做为一个优秀的门户网站框架,可以通过安装各种功能模块的方式扩充应用.正是通过这一优秀的功能,DNN框架可以实现:文章管理,图片管理,文档管理,论坛,博客,商店,调查,FAQ等等各种各样满足实际需求的模块.通过这个强大的框架支持,我们可以很容易的实现这些模块.比如:权限控制,多语言支持,多数据库支持,搜索,聚合,皮肤等功能,我都可以很容易的通过框架实现.如果是在平时,光是实现这些基础功能我们就需要花去大量的时间.现在有了DNN框架的支持,我们就可以集中精力投入到模块的业务逻辑和流程上,从

DNN模块开发系列文章(7)——用CodeSmith Templates进行编码

在利用CodeSmith Templates进行代码编写之前,我们应该先完成数据表的设计.因为CodeSmith Templates是根据数据表的字段来生成相应代码的. 首先根据<DNN模块开发系列文章(1)--分析设计>中对MyCompany_Article文章信息表的定义在SQL Server数据库中进行设计.记住要设计好主外键,特别是与Modules表的关联. 其次,我们还可以将程序所用到存储过程先编写好.在编写存储过程时,我们可以利用CodeSmith Templates中Stored

DNN模块开发系列文章(6)——DNN中的通用控件(下)

TextEditor: 开发系列文章(6)--DNN中的通用控件(下)-通用语言模块">简介: 富文本编辑器控件.功能就不用多说了吧,大家都经常用到的.DNN利用Providers模式可以很方便的集成多种富文本编辑器.据我所知就有:FreeTextBox,FCKEditor,WebHtmlEditor,CuteEditor.大家可以通过配置web.config就可以很容易的选择使用一种了,具体的配置方法在每一个富文本编辑器Providers中应该都有详细的说明. 位置:controls\T

DNN模块开发系列文章(4)——与模块开发相关的类

DNN做为一个功能强大的网站框架,它提供了提供了很多有用的类来为开发模块提供方便,以下列出几个和模块开发紧密相关的类: PortalModuleBase 说明:模块基类.所有的模块都是通过该类继承而来.这个类定义了DNN模块所要用到的方法和属性. 命名空间:DotNetNuke.Entities.Modules 文件位置:Components\Modules\PortalModuleBase.vb 常用方法: EditUrl:根据模块定义的ControlKey获取访问相应控件的Url.我们要调用

DNN模块开发系列文章(3)——在DNN中添加模块定义

添加模块定义 完成了以上几篇文章介绍的工作后,我们就可以把模块添加到DNN中了.虽然现在这个模块还不能运行,但是先添加进去就可以一边开发一边看到它的效果了. 一.用host(主机管理员)的身份登陆,进入"Host --> Module Definitions",点击"Add New Module Definition"添加新的模块定义. 二.输入以下模块信息后点击"Update"保存新模块. Module Name(模块名称):MyComp

Android通用框架设计与完整电商APP开发系列文章

作者|傅猿猿 责编|Javen205 有福利 有福利 有福利 鸣谢 感谢@傅猿猿 邀请写此系列文章 Android通用框架设计与完整电商APP开发 课程介绍 [[导学视频](http://szv1.mukewang.com/59562937e520e5f24d8b45f6/H.mp4 )] [课程详细介绍] 以下是部分截图 介绍与自我介绍 作者:网名@傅猿猿 陕西 西安市 全栈工程师 能文能武(评论区留言有机会获取个人微信畅聊人生) 点兵软件CTO 联合创始人 擅长Android Linux P

DNN模块开发系列文章(5)——DNN中的通用控件(上)

DNN中的通用控件主要在DotNetNuke.UI命名空间下,而与模块开发紧密相关的都在DotNetNuke.UI.UserControls中,它们是开发具有DNN风格模块不可缺少的元素. LabelControl 文章(5)--DNN中的通用控件(上)-通用语言模块"> 简介: 标签控件.这个应该是用的最多的一个控件了.主要起到在输入框前起提示作用,如果点击问号图标开可以给出详细的说明. 位置: controls\LabelControl.ascx 属性: ControlName:对应控

[转贴]Castle 开发系列文章

注:今天遇到以前的一个同事,要求指定用Castle来开发,他没用过这个,线上问到我,其实我也没用过这东西,只能在园子里找到这篇文章,转贴在这里,以后有空的话,再去研究一下 原文: http://www.cnblogs.com/illele/archive/2008/06/20/1227076.html Castle是针对.NET平台的一个开源项目,从数据访问框架ORM到IOC容器,再到WEB层的MVC框架.AOP,基本包括了整个开发过程中的所有东西,为我们快速的构建企业级的应用程序提供了很好的服

iOS开发系列--并行开发其实很容易

概览 大家都知道,在开发过程中应该尽可能减少用户等待时间,让程序尽可能快的完成运算.可是无论是哪种语言开发的程序最终往往转换成汇编语言进而解释成机器码来执行.但是机器码是按顺序执行的,一个复杂的多步操作只能一步步按顺序逐个执行.改变这种状况可以从两个角度出发:对于单核处理器,可以将多个步骤放到不同的线程,这样一来用户完成UI操作后其他后续任务在其他线程中,当CPU空闲时会继续执行,而此时对于用户而言可以继续进行其他操作:对于多核处理器,如果用户在UI线程中完成某个操作之后,其他后续操作在别的线程