现在的位置: 首页 > 综合 > 正文

发布 NGuestBook(一个基于.NET平台的分层架构留言本小系统)

2014年11月07日 ⁄ 综合 ⁄ 共 1991字 ⁄ 字号 评论关闭

发布NGuestBook的动机说明

      大约在半年前,我在博客上发表了一个系列文章:《基于.NET平台的分层架构实战

》。当时在讲解过程中用
到了一个叫NGuestBook的案例,在那以后,有很多朋友留言或发E-mail希望能得到NGuestBook的完整源代码,以便对照文章研究学习。
但是,在当时NGuestBook只是我虚拟的一个案例,并没有成型的系统和完整的源代码。

     
但是后来一直有很多朋友询问这个事情,所以我觉得,将那个NGuestBook做出来还是很有必要的,所以,我花了两天的时间大约做出了这个
NGuestBook,现在把它发布出来,希望能给大家一些帮助。

这个NGuestBook与文章中案例的联系与区别

     
虽然这个留言本系统与那个系列文章中的NGuestBook同名,但是就具体实现来说,有一些不同。虽然如此,“分层架构”这个核心还是一样的,所以,这
个Demo完全可以和那个文章系列配套使用,因为其核心架构思想、方式基本一致,只是具体实现有了一些差别。

NGuestBook功能概览

     
NGuestBook是一个留言本系统,主要实现了以下功能:

      1.发布留言,浏览留言
      2.管理员的登录、登出
      3.管理员对留言进行审核、删除、回复

      下面给出几幅系统运行截图:

NGuestBook总体架构说明

      1.整体采用三层架构:数据访问层、业务逻辑层、表示层
     
2.数据访问层使用Linq to Sql,XML,及SQL语句方式分别实现一个,在这个发布版本中,只有Linq to
Sql方式的数据访问层可以使用,另外两个留出扩展。
      3.业务逻辑层通过接口耦合数据访问层,全局采用Abstract
Factory+反射机制+缓存机制实现依赖注入功能。
      4.表示层使用ASP.NET MVC实现,与业务逻辑层直接耦合。

      工程说明:

      NGuestBook.BusinessComponent:业务逻辑组件
     
NGuestBook.Entities:实体类
      NGuestBook.Factories:依赖注入组件
     
NGuestBook.Interfaces:接口组件
      NGuestBook.LinqDataComponent:使用Linq
to Sql实现的数据访问组件
      NGuestBook.SQLDataComponent:使用SQL实现的数据访问组件
     
NGuestBook.Utilities:工具组件
      NGuestBook.Web:表示层
     
NGuestBook.XMLDataComponent:使用XML实现的数据访问组件

特别说明

     
1.数据库文件在/NGuestBook.Web/Data/SQLServer2005下。
     
2.这个系统还不太完善,只为了突出架构特征,而一些细节像分页、验证码等功能没有加入。
      3.这个系统没有加入Ajax元素。
     
4.这个系统的目的是交流学习的Demo,并不是真正要
投入使用,如果真要做一个留言本,完全没有必要用这么复杂的架构,这里只是为了突出架构的方式。所以请不要在留言中表达“做个留言本没必要如此复杂”或
“留言本我一个小时就能做出来”之类的意思。



版权声明

     
本系统和源代码部分或全部可以任意拷贝、传播或用于自己的系统中,但不包括用于商业用途。
     
本系统中自由传播的成分仅仅包括代码,而其中一些原创的思想或模式(包括但不限於“数据验证模式”,“基于ASP.NET
MVC的回传模型重组模式”等)等一些理论性内容已经纳入本人的论文选题内,所以不允许将本系统中原创的思想或模式撰写成论文,一经发现将追究法律责任。


发/运行环境

      Windows XP SP2 中文版
      Microsoft .NET
framework 3.5 SP1
      Microsoft Visual Studio 2008 SP1
     
Microsoft ASP.NET MVC RC
      Microsoft SQLServer2005

配置说明

      连接字符串在/NGuestBook.LinqDataComponent
/app.config
中,请根据具体情况自行修改。
     
管理员的登录名和密码在/NGuestBook.Web/Web.config中,<appSettings>节点下
的"AdminName"和"AdminPassword",默认均为"admin"。需要可以自行修改。



者:T2噬菌体


出处:http://leoo2sk.cnblogs.com



文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

抱歉!评论已关闭.