`
chelsea
  • 浏览: 117904 次
  • 来自: ...
社区版块
存档分类
最新评论

DNN4 (DotNetNuke) 备忘录

 
阅读更多
 

环境:Visual Web Developer 2005 Express,DNN4 Starter Kit,C#

 

1,安装DNN

  • 改一下SQL Server连接信息和赋予文件系统目录和IIS虚拟目录相应权限即可顺利安装

2,下载安装第三方Module(.zip)

  • 使用Host->Module Definitions->Uplode New Module安装,或者
  • 拷贝到/Install目录下使用url “Install/Install.aspx?mode=InstallResources”安装(or through the Install Resources Scheduled Event.)

3,创建安装自定义Module

  • 使用Starter Kit创建并修改
  • 使用Host->Module Definitions->Add New Definitions安装
  • 或者使用xxx.sqldataprovider 脚本来将Module注册到DNN数据库中
  • 引用:

为了在DotNetNuke框架中注册模块,需要增加一些记录到数据库。可以通过Host下的模块定义来增加。为了开发方便,也可以使用Item Template来创建模块SQL脚本。这个脚本在DesktopModules目录下,和Add New Item输入的模块名一致 ( 例如这里名叫Widget.SqlDataProvider ).

DotNetNuke
SQL脚本使用特殊的语法,以保证正确性。最简单的方法就是在DotNetNuke应用程序中执行这些脚本。在Visual Web Developer, Ctrl-F5,来启动应用程序,通过Host登陆(默认密码为"host")选择Host下的SQL项。

粘贴模块的SQL脚本,选中 Run As Script option,Execute.

模块内容已经存放到数据库里了,通过DotNetNuke模块模板创建的 01.00.00.SqlDataProvider SQL脚本,将用来在数据库里创建需要的表和存储过程。这些脚本放在 DesktopModules里,从 01.00.00.SqlDataProvider SQL 脚本文件里,拷贝并粘贴SQL脚本,选中 Run As Script option,Execute.

--from www.dnnchina.net

 

4,How to export/import module?

  • DotNetNuke.Entities.Modules.IPortable?
  • Private Assembly Package, zip file(dll, ascx, dnn, db script, ...)

5, How to add/retrieve custom settings for module?

  • modify Settings.ascx to add new control
  • using DNN Framework setting service: ModuleSettings table: moduleId, key, value;

6, How to use custom database table for module?

  • in .SqlDataProvider script, add your table and stored procedure, then execute it.
  • in your xxxInfo class, add responding property.
  • in your SqlDataProvider class, add responding parameter.
  • Reference:
Each field in the data store should map to a corresponding property in the Info class. To allow the generic CBO helper class to automate the transfer of data from IDataReader to Custom Business Object, the directly related class properties and database fields MUST be identical in terms of Name and DataType.

As an example which demonstrates the steps involved in extending the core, we will assume we are adding a new Field to a core Table.

If necessary, change the Presentation Layer to display/edit the new field

Modify the associated Business Logic Layer ( BLL ) class to add the Field to the necessary methods ( typically AddTable, UpdateTable )

Update the DataProvider base class with the necessary changes from Step #2 and recompile the application.

Update each DataProvider subclass implementation ( ie. SqlDataProvider, AccessDataProvider ) with the necessary changes. Recompiling the applicatioin will reveal any discrepancies between the base class and implementation. The number of implementations which need to be modified is dependent on the number of different databases your application supports.

Update each DataProvider subclass implementation script with the specific database alteration commands ( ie. ALTER TABLE ). In the case of database providers which use stored procedures, the new versions of the stored procedures must be scripted as well (with associated DROP and CREATE commands ).

--from www.dotnetnuke.com

 

7, Structure for a module created by Starter Kit

  • BLL: app_code/modulename
  • DAL: app_code/modulename
  • View: desktopmodules/modulename
  • Admin(Edit&Setting): desktopmodules/modulename
  • "模板将创建一个自定义模块所需要的文件,包括SQL脚本文件,数据访问层,业务对象,用户接口和部署清单。也包括了在开发环境里的模块说明。"
     

8, Custom Experience

  • GetProfile/SetProfile to support custom experience.

 

Thinking in DNN

1, Platform

  • A couple of basic infrastructures, an extension mechanism, and an administrator tool.

2, Extra Middle Layer

  • Data Access Layer (DAL) be independent with Business Logical Layer (BLL), it use DataReader to pass data to up layer.
  • Business Logical Layer (BLL) be independent with Data Access Layer (DAL), it use Custom Business Object (CBO) to pass data to under layer.
  • Then how to match DataReader with CBO each other ? It be called Mapper Layer, or Mapper Pattern (POSA).
  • You will notice that the Controller methods which send information to the database ( ie. Add and Update ) pass a Custom Business Object instance as a parameter. The benefit of this approach is that the object definition is isolated to the BLL which reduces the modifications required to the application when the class definition changes. The individual object properties are then extracted and passed as Scalar values to the Data Access Layer ( this is because the DAL is not aware of the BLL object structures ).

 

Questions for DNN

  • 是否每个Module都最多只能有一个View,Edit,Setting控件文件(.ascx)?
  • how to seperate module project from DNN using VWD Express?
  • Where could I get .Net Framework 2.0 Full Feature Description?
  • Where could I get C# 2.0 Full Feature?.

 

Memorandum

分享到:
评论

相关推荐

    DNN Skin DotNetNuke皮肤

    DotNetNuke(DNN)是一款开源的内容管理系统(CMS),广泛用于构建企业级的Web应用程序。DNN Skin,也就是DNN皮肤,是DNN平台的一个关键组成部分,它负责定义网站的外观和用户体验。一套完整的DNN皮肤通常包含多个...

    dnn 皮肤dotnetnuke Skin

    4. **安装和管理DNN皮肤与容器** 安装皮肤和容器通常通过DNN的“外观”部分进行,管理员可以上传ZIP文件(如本例中的skins.zip和containers.zip),然后在后台进行安装和激活。皮肤和容器的管理允许用户轻松切换...

    DNN(DotNetNuke)9.0.0中文语言包;DNN 9.0.0 language pack

    用了半年多的时间,陆陆续续翻译完了DNN(现在好像不用DotNetNuke了)9.0.0的语言包。翻译过程中,发现原英文语言有个别单词错误,看来出错难以避免。DNN是非常优秀的CMS,但是感觉现在关注的人少,网上的资料也很少...

    dnn6.1开发模板DotNetNuke_Community_06.01.01_StarterKit.rar

    【标题】"dnn6.1开发模板DotNetNuke_Community_06.01.01_StarterKit.rar" 提供的是一个基于DotNetNuke 6.1版本的开发模板,它是一个用于快速构建符合DotNetNuke框架标准的模块的工具集。这个压缩包中的内容主要是...

    DotNetNuke(DNN)5.0

    DNN5.0安装和汉化一起打包 方便大家使用 内容列表: DotNetNuke5.0.1源码包.zip DotNetNuke_Community_05.01.04_...DotNetNuke入门心得dnn-tutorial-for-beginner.pdf ResourcePack.Full.05.00.01.zh-CN-Wizard.zip

    DotNetNuke(DNN) 7 中文语言包

    DotNetNuke (DNN) 是一个功能丰富的开源平台,被广泛用于构建和管理网站、门户及内容管理系统。它基于Microsoft的.NET Framework,提供了一套完整的工具集,使得非技术用户也能轻松创建和维护复杂的Web应用程序。DNN...

    dnn-base-project:DNN(DotNetNuke)基础项目,Mentalstack

    **DNN(DotNetNuke)基础项目简介** DNN(DotNetNuke)是一个开源的内容管理系统(CMS),主要用于构建动态网站。它基于.NET Framework,采用C#编程语言开发,提供了一个灵活且功能丰富的平台,使得开发者能够快速...

    DNN中文语言包8.0.4版,DotNetNuke中文语言包8.0.4版

    ** DotNetNuke (DNN) 简介** DNN(DotNetNuke)是一个开源的内容管理系统(CMS),基于.NET框架,专为构建企业级Web应用程序而设计。它提供了丰富的功能,包括网站创建、内容发布、用户管理、模块化布局以及社区...

    DotNetNuke|DNN 06.01.00 安装包

    本程序 所有权归 DotNetNuke 公司所有 本程序开源并且免费 程序包名称为 DNN Platform 07 02 02 Install zip">DotNetNuke DNN 是一个开源门户 内容管理系统(CMS) 网站后台管理系统 基于Microsoft的 NET技术 DNN为...

    DotNetNuke6.25简体中文语言包

    DotNetNuke是一款开源的内容管理系统(CMS),广泛用于构建企业级的Web应用程序。这个"DotNetNuke6.25简体中文语言包"是针对该版本特别制作的,旨在为中文用户提供友好的界面和操作体验。语言包的提供者花费了大量时间...

    DotNetNuke|DNN 07.02.02 安装包 www.dnntools.net

    DotNetNuke DNN 是一个开源门户 内容管理系统(CMS) 网站后台管理系统 基于Microsoft的 NET技术 DNN为广大商业门户网站的开发提供了一个健壮的 可扩展的 功能完备的框架 本程序由 http: www dnntools net 上传 ...

    dnn操作手册(DotNetNuke)

    1. DotNetNuke(DNN)平台概述: DNN是全球领先的开源门户和内容管理系统,被全世界的许多组织所采用。门户通常为组织内的众多应用程序提供单一的网页前端,例如,它可能从一个网站上呈现来自人力资源(HR)、财务...

    [CMS程序]DotNetNuke(DNN)v3.0.13 汉化版_dnn3013hh

    【 DotNetNuke (DNN) 简介】 DotNetNuke(DNN)是一款基于.NET Framework开发的开源内容管理系统(CMS),以其强大的模块化架构、易用性及高度可定制性而闻名。它允许用户无需编程知识就能创建、管理和维护复杂的...

    dnn安装步骤dnn安装步骤

    今天,我们将详细介绍DNN的安装步骤,包括Startkit的安装、DotNetNuke 04.08.00 Install的安装和DotNetNuke 04.08.00 Source的安装。 一、Startkit的安装 Startkit是一个初学者包,提供了基本的DNN功能。安装...

    DotNetNuke DNN 06 02 06 网站安装包 www dnntools net

    DotNetNuke DNN 是一个开源门户 内容管理系统(CMS) 网站后台管理系统 基于Microsoft的 NET技术 DNN为广大商业门户网站的开发提供了一个健壮的 可扩展的 功能完备的框架 本资源由 http: www dnntools net 上传...

    DNN6中文语言包

    **深度神经网络(Deep Neural Network, DNN)与DotNetNuke 6中文语言包** DotNetNuke(DNN)是一款开源的内容管理系统(CMS),它基于.NET框架,广泛用于构建动态网站、Web应用程序和移动应用。DNN以其模块化的...

    DNN 天气预报模块 (Weather Forcast)

    【DNN天气预报模块(Weather Forecast)】是一个用于DotNetNuke内容管理系统的插件,专为网站管理员提供实时天气信息展示功能。该模块能够帮助网站访客获取精确的天气预报,增强用户互动并提升用户体验。通过在网站的...

    DNN建站技术——DNN网站新闻模块

    DNN(DotNetNuke)是一种流行的开源Web内容管理系统,尤其适用于构建动态网站。DNN建站技术以其强大的模块化设计著称,允许开发者轻松添加和定制功能。在DNN中,新闻模块是一个至关重要的组成部分,它为网站提供了一...

    DNN6.0安装步骤

    DNN(DotNetNuke)是一个开源的内容管理系统(CMS),基于.NET框架,广泛用于构建动态网站、电子商务平台和应用程序。本篇将详细介绍DNN6.0的安装过程及汉化方法。 一、DNN6.0安装准备 在开始安装之前,确保你的...

Global site tag (gtag.js) - Google Analytics