DotNetNuke模块和数据展示(一)

    对于标准的DotNetNuke模块,数据是和模块相关的,这个也就是我们在开发模块的数据结构的时候,比如像Survery模块等,主表必然是有一个 ModuleId这个字段的,这也就保证了当我们在同一个网站中即使有100个该模块的实例,但是其数据却是完全不同的,从而保证了我们可以在同一个网站 中对模块进行任意多次的重用,这个是非常好的一个特性。

    同时,DotNetNuke的模块机制确保了模块是一个完全封闭的、完全有自我行为控制能力的独立的小整体,就像是美利坚合众国下的州一样,虽然属于同一个体制之下,但是却可以有自己的法律和行为——这个就可以理解为模块的Control(控制)。

    以上所讲的可能有点啰嗦而且难懂,但是我却坚持要将之讲出来,是因为我觉得这对于我扩展DotNetNuke来说非常重要。

    对于DotNetNuke来说,每一个模块,就可以理解为一个完完全全的、完完整整的系统(在DotNetNuke大框架之内的完整),完全不依赖于其他任何的普通模块(管理模块除外)。

    当然,这也有一定的限制,也就是对于DotNetNuke来说,模块之间,基本上是没有互动的;而且,模块之间的数据,也是毫无关系的。而我在进行模块开 发的时候,认为如果模块之间完全没有关系的话,实际上可能不能反映某些实际的案例,所以,在我的数据结构中,就已经预留了相应的接口,从而确保模块之间(当然是同一类型的模块)有可能进行数据的共享,这也就是我在《 DotNetNuke自定义窗体模块的数据结构(二)》 的数据结构中,除了常规的ModuleId之外,还要增加FormID和KeyID的缘故,我希望的是开发出来的模块既可以做到像通常的 DotNetNuke模块那样,有本模块完全独立的数据,也可以在管理员配置的情况下,不但可以展示本模块实例的数据,同时也可以展示统一模块下其他模块 实例的数据。

    标准模式下,DotNetNuke的模块和数据之间的关系应该是如下图所示:


        经过数据结构的重新设计之后,我们的一个模块既可以对应自己本模块的数据,也可以在某种情况下,将其他模块的数据“拿出来”一起进行展示。按照我们的数据结构,DotNetNuke的模块和数据的关系就如下图所示:

    上图中,模块实例01和02仍然是只展示自己的数据;但是模块实例03则既可以展示本模块的数据,又将01、02两个模块的数据取出来一起进行展示。

    这样的好处是什么呢?我个人认为,在业务逻辑非常复杂的情况下,如果数据非要用一个模块来展示的话,可能会造成权限的 极其复杂,甚至会造成权限的混乱;而如果模块之间的数据可以共享的话,那么,复杂的业务逻辑,就可能可以拆分成若干个模块,这若干个模块每一个专注某一项 功能,和页面的权限、模块的权限组合在一起,可以较为轻松的完成在一个模块中很难完成的业务逻辑。

    嗯,仍然是有点难以理解,需要晚一点,我们会涉及到这种情况的例子,到时候我们再回来看这一章节。

转载于:https://www.cnblogs.com/dnnworkflow/archive/2008/11/03/1325799.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ContentManager芳园科技推出的一款功能丰富的文档和新闻类管理模块,芳园科技官网的文档管理就是使用的这个模块。 安装环境:最低安装版本是DotNetNuke Community6.2,由于7.0继承了6.0版的功能且运行速度大为提高,所以推荐DotNetNuke Community7以后的版本 功能列表: 一、可以对文档、图片、视频、下载资源等多种类型的网站内容进行管理,还可以根据自己的需要在原有类型基础上创建新的类型,不同类型之间可以进行关联,可以放在同一个分类下面。 二、对内容进行无限制分类管理。利用树状目录对文档进行分类,分类的层数的数量没有限制,分类建成后可以随意修改、移动、放入回收站、删除等操作,可以使用拖动功能来移动分类,非常方便。 三、提供多语言设置。管理员可以为文章分类和文章内容设置多种语言显示,切换不同的语言可以查看不同的译本,如果无译本分类名称按默认语言显示,文章内容按第一次录入时的语言显示。 四、提供多版本功能。每篇文章的内容的每个语言译本都可以使用多版本功能,可以随时返回任何一个版本,或者删除不用的版本等。 五、分类的权限管理功能。类似DotNetNuke的网页权限管理功能,可以设置分类对哪个用户群或者哪个用户可见。 六、分类可以集成到网站的导航菜单中,前提是使用DDRMENU模块,可以设置分类是否集成,还是被排除在外,如果你的网站皮肤不使用DDRMENU,手工建立网页然后设置跳转网址到指定的分类页。 七、对于从网络复制的内容可以自动下载图片存储到本地,并产生缩略图,如果删除有图片的文档,包含的图片可以自动删除,不会产生垃圾文件。 八、提供了回收站功能,删除的分类和文档将首先入回收站,以便日后恢复,再次删除才会彻底删除。 九、文档有标签功能,对热词进行标签索引,文档还可以指定“推荐”、“图片”、“特别推荐”、“置顶”等属性,以供前台文章特别列表进行调用。 十、前台的文章列表和内容显示使用模板功能,您可以按自己的需要对模板进行设计,模块自动把模板里的特殊字段替换成相关的内容,比如[TITLE]代表标题,[ARCCONTENT]代表文章内容,[LITPIC]代表文章缩略图等等。模板分为授权内容页模板,未授权内容页模板、授权列表页模板、未授权列表页模板、特别列表模板、图片内容模板、视频内容模板、下载类型内容模板,可以在类型、分类、文档、模块中指定模板,优先级顺序为模板设置>文档>分类>类型>系统默认。 十一、文章提供评论功能。您可以按自己的需要开启或关闭这个功能。管理员可以设置评论审核功能,删除未通过的评论等。 十二、文章特别列表功能。这是一个功能强大的控件,可以用于显示多种类型的列表。比如某一分类下最近更新的文档、点击量靠前的文章、具有“推荐”或其它属性的文档、置顶的文章等。同样也提供了模板功能。 十三、还有分类菜单功能、标签云、指定分类下的内容(单词或多关键词)搜索功能、RSS订阅、网站地图、事件记录功能等等。   十四、企业版可以连接Sharepoint2010网站,实现DotNetNuke和Sharepoint的最优组合,即可以使用DotNetNuke提供的强大网站管理功能,又能使用Sharepoint以文档进行高级管理。 十五、 企业版还可以建立多个角色对文档进行管理,授与不同的权限,特别适用于大型的、编辑管理人员较多的网站或者访问者可以参与编辑的网站。 由于功能较多不能一一介绍,使用过程中可以阅读相关的帮助信息,可以很快掌握。 协议类型:协议分为三种,免费协议已经和安装包一起下载安装,是默认协议,用户可以自由使用,但只限于建立六个文档分类,内容类型只限于文档类型。第二种是专业版协议,包括免费版全部功能,但没有分类数量和内容类型限制。第三种是企业版协议,包括专业版全部功能外,包括Sharepoint网站集成功能并多用户多角色的文档管理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值