Asp.net MVC 3 開發企業網站系統仿照部落格園部分功能–總體設計

來源:互聯網
上載者:User

在使用Asp.net MVC3 開發企業網站系統的提議得到了廣大園友的熱情鼓勵,也使我更加有信心和決心把這個簡單的系統完成的希望。

前兩篇索引:Asp.net MVC 3 開發一個簡單的企業網站系統      Asp.net MVC 3 開發簡單的企業系統開篇--資料庫

麻雀雖小,五髒俱全。做一個小的企業網站我們也不能例外,上篇我們說了做這個網站應該具有的資料庫設計階段。按照工程理論來說,我們應該進行的就是總體設計了。

好吧,廢話不多說,咱們一起來討論一下這個簡單網站的總體設計應該如何進行。

首先,我們確定具體的功能以及採用的實現介面。

1.登入、使用者註冊。說實話,在 企業網站中一般不需要使用者的註冊,但是因為我們仿照的是部落格園,我們天天都會來的地方,所以也加上使用者登入和註冊功能。

當然,只要涉及到使用者的功能,那麼許可權管理也應該是必需品了。

2.使用者的許可權管理組件。在MVC中處理這個相對Web form 要簡單很多,可以在註冊全域Filter特性來完成這個功能。

3.部落格園左側的分類列表顯示 。

對於這個功能,當然我想首選肯定就是MVC中經典的PartialView。

4.部落格園首頁中間部分的部落格列表功能。這個部落格園採用的是Ajax方式進行的非同步提交方式,當然這涉及到無重新整理,提高使用者體驗的功能。我們也不能落後,採用的依然就是Ajax+Json的處理方式,當然分頁是一個問題。需要採用分頁組件,我能想到的就是MVCPager,不知道園友們有沒有其他組件或者更有效分頁方法。

5.部落格詳細內容頁面。這個應當是所有要實現的內容中最簡單的一個,至少我個人是這麼覺得。不要鄙視我奧

6.部落格評論頁面。採用KindEditor線上編輯器,使使用者進行評論。我起初的設想是把這個評論顯示頁面也做成PaitialView的形式,也是採用Ajax進行提交。但是這樣做,我心理總是感覺怪怪的,但是也找不到更好的辦法,如果各位園友有什麼好辦法,請您務必告訴我,讓我的大腦也見識一下。

7.搜尋功能。類似於部落格園的找找看功能,這個當然就是用到我前面所列舉的架構中的偉大的Lucene的移植版本—Lucene.net。吐槽一下,為了更好、更有效率的實現搜尋,我把部落格園中關於Lucene.net的文章基本看了一遍,但是我發現所用版本都是2.3,而現在最新版已經是3.0了,所以我果斷的從官網下載了最新版,我準備把3.0版研究一下,但是沒有對應的文檔,如果各位有什麼好的全面的資料。請告訴我。

還有就是當然採用Lucene.net 3.0是必須的,但是中文分詞,採用的是大牛的Apsara Distributed File System(很霸氣的名字)分詞2.3版。

當然還有一個不得不提,就是程式自動化。Quartz的移植版本Quartz.net到來了,我們會使用它定時的使用Lucene.net建立索引,畢竟機器比人準時很多。

8.說了前台了,還有很重要的後台管理,前後台搭配,幹活也不累。後台採用的就是easyui,當然還有很多其他的基於jquery的架構,我腦袋笨,只能採用easy的了。

9.效能最佳化。我常聽我老大說,做一個網站很簡單,網上一找一大堆,但是真正達到需求的不多。其中,效能就是一個因素。效能最佳化,硬體上固然重要,但是在軟體上下功夫更節省。

各種免費的效能最佳化的工具當然我們要採用了,緩衝就是首選,Memcached就是我的選擇,你問我為什麼不用內建緩衝而用Memcached?我只能說是我在公司就用這個,而且這個擴充性高,內建的緩衝功能弱,擴充性差,不靈活。

10.說完了效能,當然人無完人,程式也會出錯。現在就是日誌出馬的時候了。再來一個就是Log4的移植版本Log4Net了,可以記錄日誌到文本、資料庫等儲存介質中。

11.可能大家要說了,怎麼沒看見曾經提到過的其他架構了,是不是因為不會而不敢使用了!其實真有這個可能,但是我是一個頑強的不倒翁,自誇呵呵。Ioc(依賴注入)、Nhibernate(Entity framework)還有Npoi.net都不屬於要實現的功能範圍內,這些只是減少我們維護代碼的時間,減少出錯的幾率。但是他們更複雜,更值得我們研究學習,至少我這麼覺得。

Npoi.net就是一個對Excel進行操作的組件,可以對Excel進行360度的操作,只有想不到,沒有做不到。使用他就是為了匯入資料需要。畢竟建立的系統中資料是空的,匯入一些看著也舒服。

好了,本來要說總體設計的,沒想到扯來扯去竟然說了那麼多廢話,唉,離高手還有很遠啊!

道路仍然很遠,同志們仍須努力~~~~

不寫了,打了那麼多字,累死了,看會電視先

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.