發布NGuestBook(一個基于.NET平臺的分層架構留言本小系統)

作者: EricZhang(T2噬菌體)  來源: 博客園  發布時間: 2010-08-11 21:12  閱讀: 968 次  推薦: 0   原文鏈接   [收藏]  

  發布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"。需要可以自行修改。

 

0
0
 
標簽:NGuestBook .NET
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()