nopCommerce的源代碼結構和架構


編寫本文檔是為了向程序員說明nopcommerce的解決方案結構,亦是程序員開發nopcommerce的居家必備良書。首先 nopcommerce的源代碼很容易拿到,它是開源的,所以你可以直接到網上下載。 在你打開VS以后項目和文件夾都會完整列出來,我們建議你在看此文檔的同時也打開你的VS來瀏覽項目和文件。

 

 

文章說明:文章來源自 我的博客,於原文之理解而翻譯,並非出版社那種按字詞翻譯風格。歡迎各位提出意見,也歡迎各位轉載不過務必注明本文原址。更多 nopcommerce的文章請關注 http://www.dingsea.com/?tag=nopcommerce,或者加入我們的QQ群 101675096
 

 

絕大多數的項目,目錄和文件都顧名思義,你可以從名字就大概知道是做什么的。比如Nop.Plugin.Payments.PayPalStandard這個我都不用看項目代碼就能猜到做什么的。
\Libraries\Nop.Core
Nop.Core項目包含nopcommerce的一系列核心類如緩存,事件,輔助類和業務對象(如訂單和客戶實體類)
\Libraries\Nop.Data
Nop.Data項目包含一系列的數據訪問類和方法以從數據庫或其他數據媒介讀取和保存數據。它也有助於把數據訪問邏輯和你的業務對象分離。 nopcommerce使用Entity Framework (EF) Code-First方法,允許你在nopcommerce代碼中定義實體 (所有的核心實體類都在Nop.Core中定義),再讓EF生成數據庫,這就是為什么會叫Code-First。你接下來可以用LINQ來查詢對象,它自 己會把查詢轉換為SQL語句並在數據庫里執行。nopcommerce擁有牛B的API讓你完全定制持久映射,你可以在這兒和這兒找到Code- First的資料。
\Libraries\Nop.Services
此項目包含一系列的核心服務,業務邏輯,驗證,如果有數據的話還有數據的計算方法,也就是傳說中的業務訪問層(BAL)

\Plugins\ 文件夾中的那些項目

Plugins是VS的解決方案文件夾,硬盤中它是在你解決方案的根目錄下。由於項目在編譯時的輸入路徑是”..\..\Presentation \Nop.Web\Plugins\{Group}.{Name}\”,這樣插件的DLL會自動地放到 \Presentation\Nop.Web\Plugins\文件夾中,用來放置已部署插件。這樣也能讓插件包含靜態文件比如CSS或JS,就不用在項 目之間拷貝這些文件了。

\Presentation\Nop.Admin

Nop.Admin是一MVC項目,如果你還從沒用過ASP.NET MVC,請猛擊這兒有更多信息。可能你已經猜到這是表示層中的管理后台,你可以在 \Presentation\Nop.Web\Administration文件夾中找到它,此項目不能運行。

\Presentation\Nop.Web

Nop.Web也是一MVC項目,前台網店的表示層,這個才是你真正要跑起來的項目,它也是整個應用程序的起始項目。

\Presentation\Nop.Web.Framework

Nop.Web.Framework是一個表示層的類庫項目,包括可以讓后台和前台使用的一些共用的展示功能。

\Test\Nop.Core.Tests

Nop.Core.Tests是Nop.Core的測試項目

\Test\Nop.Data.Tests

Nop.Data.Tests是Nop.Data的測試項目

\Test\Nop.Services.Tests

Nop.Services.Tests是 Nop.Services的測試項目

\Test\Nop.Tests

Nop.Tests是一個類庫,包含其它測試項目中要用的一共有類和輔助方法,此項目不包含任何測試用例


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM