1. 程式人生 > >ASP.Net: EshineASPNet-基於ASP.Net敏捷開發開源框架

ASP.Net: EshineASPNet-基於ASP.Net敏捷開發開源框架

筆者從事asp.NET開發多年,這裡把一套基於asp.Net的比較完善的網站開源分享給大家,主要是幫助新人學習。本框架包含了諸多功能,在實際專案中使用了超過4年時間,相關的工具和核心程式碼可靠性相對比較完善,三層架構也是源於網路回饋網路。部分頁面是由刪除原業務邏輯得到,會包含有不夠簡潔的程式碼,全當樣例,具體在自己的專案實施過程中優化。本框架的思想是,簡單和快速。

            Author:Eshine Lee

相關連結

使用教程 (教程大部分內容同樣適用MVC平臺,覺得有幫助的請在github來個Star或者Fork都非常歡迎!)

包含功能模組和特色:

  • 前臺:
    • 使用者登入 - 使用者名稱/郵箱/手機多匹配登陸,md5加密方式,登陸多重定向
    • 幻燈片放映 - 基於jQuery的炫麗切換效果
    • 中英文雙語 - 採用公共資原始檔的多語言實現
    • 安全中心 - 含忘記密碼,安全提問,繫結郵箱更換等
    • 單使用者登陸 - 採用Hashtable禁用多點登陸,踢出邏輯
    • 頁面超時退出 - 採用Session超時增強安全性
    • 省市區三級聯動 - 內建資料庫,用於地址輸入
    • 百度地圖模組 - 根據經緯度在百度地圖標註多個門店(支援谷歌地圖)
    • 身份證檢查 - 嚴格檢查身份證號碼每一位確保是正確的身份證號
    • 圖片驗證碼 - 簡單字元驗證碼圖片生成
    • 商城模組 - 輕量化的小型電商,含展示頁面,購物車,收貨地址及結算
    • 支付模組 - 含支付寶即時到賬及銀行列表
    • 自適應 - 自適應螢幕寬度
    • 傳送郵件 - 根據模板傳送郵件
  • 後臺:
    • 許可權管理 - 高可複用的許可權-角色-員工模組,許可權具體到頁面粒度
    • 使用者管理 - 使用者的編輯、篩選、資訊展開
    • 公司管理 - 公司資訊的管理
    • 商品管理 - 商場管理
    • 訂單管理 - 訂單的管理
    • 匯入Excel - 自動讀取excel多張sheet並存入資料庫
    • 匯出Excel - 匯出gridview資料至excel

涵蓋技術:

Asp.net Webform,Sql Server,三層架構,使用者控制元件,頁面繼承

使用的第三方元件:

Bootstrap, Kindeditor, Senparc.Weixin

簡單閒聊下為什麼是webform而不是MVC,以及三層架構。對於這一點,本框架的思想是簡單和快速,用webform的拉控制元件方式對於大師級工程師或企業級開發團隊所不齒,(筆者未來會分享一套基於MVC的方案),不過對於初學者而言這是從學校或自學所積累的只是到真實專案開發最沒有壓力的一步,而且這個框架也是基於過去分享的一個教科書式三層架構基礎的延伸,增加了自動實現BLL、DAL、Model的程式碼。

筆者在只是為了驗證可行性或製作原型來交流的時候,更傾向webform的形式,因為這個階段壓根不考慮頁面重新整理的使用者體驗,頁面大小對載入速度的影響等問題。另外,並不是webform就不能用ajax call的形式來做頁面互動,而是在可實現所有功能及效能的基礎上提供偷懶的可能性。

對於功能模組,有這個簡單的框架可以快速的對設想做技術可行性探索,上面羅列的功能其實只是部分,還有諸多第三方系統的對接,簡訊的傳送等功能都刪除了,這個根據情況自行定製即可,樣例都在。在對資料庫操作,多功能整合,結構分層等都遊刃有餘以後,採用MVC,學習最前沿的技術才是王道,但不是一蹴而就的。

最後說一下使用,打包下載github包之後,先到db資料夾,這裡有個bak檔案可以直接還原到sql server 2012以上的版本,對於低版本的sql server,這裡提供了script檔案執行一次就可以建立資料庫。然後修改web.config裡面的connectionstring就可以運行了,have fun!