天天看點

ASP.NET MVC Bootstrap極速開發架構

前言

每次新開發項目都要從頭開始設計?有木有一個通用的快速開發架構?并且得是ASP.NET MVC  And Bootstrap?資料庫不要手工建立?架構對未來業務支援的擴充性好?這麼簡單的功能還需要一天搭建基礎環境?能不能隻關心我所需要的業務?

有這樣的一個項目,基于ASP.NET MVC、EntityFramework、Memcached、Bootstrap的快速項目開發架構,隻需3秒鐘即可建立一個帶有簡單使用者管理的項目。

一鍵安裝

懶人一鍵安裝包下載下傳位址,輕按兩下“install.bat”批處理,即可将模闆項目加入到VS項目模闆清單。

ASP.NET MVC Bootstrap極速開發架構

極速建立

隻需單擊一個“确定”按鈕即可建立一個帶有簡單使用者管理、登陸功能的背景程式,如下圖所示:

ASP.NET MVC Bootstrap極速開發架構

 運作效果

登陸界面

ASP.NET MVC Bootstrap極速開發架構

管理背景主界面

ASP.NET MVC Bootstrap極速開發架構

使用者管理

ASP.NET MVC Bootstrap極速開發架構

自動建立的資料庫

ASP.NET MVC Bootstrap極速開發架構

導出自己的項目模闆

導出項目模闆示例截圖:

ASP.NET MVC Bootstrap極速開發架構

源碼亮點

服務接口層,徹底拒絕BLL的垃圾備援代碼

ASP.NET MVC Bootstrap極速開發架構

服務抽象基類

public abstract class ServiceContext : IDisposable
    {
        /// <summary>
        /// 資料庫操作上下文
        /// </summary>
        public readonly DefaultDbContext DbContext = new DefaultDbContext();

        /// <summary>
        /// 緩存元件
        /// </summary>
        public CacheContext CacheContext { get; private set; }

        /// <summary>
        /// 動态設定緩存對象的新執行個體
        /// </summary>
        /// <param name="cacheContext">緩存執行個體對象</param>
        public void SetCacheInstance(CacheContext cacheContext)
        {
            //先釋放現有的緩存元件
            if (CacheContext != null)
            {
                CacheContext.Dispose();
                CacheContext = null;
            }

            //初始化緩存元件新的執行個體
            CacheContext = cacheContext;
        }

        public void SetCacheInstance(Type cacheContextType)
        {
            if (cacheContextType == null)
            {
                throw new ArgumentNullException("cacheContextType");
            }

            if (!typeof(CacheContext).IsAssignableFrom(cacheContextType))
            {
                throw new ArgumentException(
                    string.Format(CultureInfo.CurrentCulture, "該類型 {0} 必須繼承自抽象類CacheContext", cacheContextType),
                    "cacheContextType");
            }

            try
            {
                CacheContext = Activator.CreateInstance(cacheContextType) as CacheContext;
            }
            catch (Exception ex)
           {
                throw new InvalidOperationException(
                        String.Format(
                            CultureInfo.CurrentCulture,
                            "建立抽象類 CacheContext 的執行個體 {0} 失敗",
                            cacheContextType),
                        ex);
            }
        }

        public void Dispose()
        {
            if (DbContext != null)
            {
                DbContext.Dispose();
            }

            if (CacheContext != null)
            {
                CacheContext.Dispose();
            }
        }
    }      

運作過程中可以動态切換的緩存元件

ASP.NET MVC Bootstrap極速開發架構

服務接口層的具體業務實作

ASP.NET MVC Bootstrap極速開發架構

對new關鍵字有潔癖?深痛惡絕?

ASP.NET MVC Bootstrap極速開發架構

 一切接口實作實行配置化

ASP.NET MVC Bootstrap極速開發架構

任何異常休想逃脫 

ASP.NET MVC Bootstrap極速開發架構

守株待兔

ASP.NET MVC Bootstrap極速開發架構

總結

項目的基本架構給你提供了快速的入門,更NB的設計還需要你的進一步想象發揮。

源碼位址:https://github.com/smartbooks/QuickBootstrap

深入溝通?咱進群 229853793 交流。