nopcommerce商城系统--源代码结构和架构
這個文檔是讓開發(fā)者了解nopcommerce解決方案結(jié)構(gòu)的指南。這是新的nopcommerce開發(fā)者學(xué)習(xí)nopcommerce代碼的相關(guān)文檔。首先,nopCommerce源代碼是很容易得到的。它是一個開源應(yīng)用程序,因此,所有你只要從代碼托管完整下載它就行了。在你打開VS以后項目和文件夾都會完整列出來,我們建議你在看此文檔的同時也打開你的VS來瀏覽項目和文件。
?
?
?
?
?
?
?
?
?
?
?
大部分項目、目錄和文件的都可以通過名稱,得到設(shè)計者的一個粗略想法。例如,這個Nop.Plugin.Payments.PayPalStandard項目,只要看名稱就能猜出它是干什么的。
\Libraries\Nop.Core
Nop.Core項目包含nopcommerce的一系列核心類如緩存,事件,輔助類和業(yè)務(wù)對象(如訂單和客戶實體類)
\Libraries\Nop.Data
該Nop.Data項目包含了一系列的類和函數(shù)來讀取和寫入數(shù)據(jù)庫或其他數(shù)據(jù)存儲介質(zhì)。該Nop.Data庫有助于將數(shù)據(jù)訪問的邏輯從業(yè)務(wù)對象中分離出來(分離關(guān)注點)。?NopCommerce使用實體框架(EF)Code-First方法。Code-First允許開發(fā)人員在源代碼中定義實體(所有核心實體在Nop.Core項目中定義),然后用EF來生成基于C# 類的數(shù)據(jù)庫。這就是為什么它被稱為Code-First。然后,您可以使用LINQ來查詢對象,因為它會悄悄地把代碼轉(zhuǎn)化為SQL語句并在數(shù)據(jù)庫執(zhí)行。?NopCommerce采用了流暢的API來完全定制持久性映射。如果想了解更多Code-First請訪問這里或這里。
\Libraries\Nop.Services
這個項目包含了一組核心服務(wù),業(yè)務(wù)邏輯,驗證,以及與數(shù)據(jù)相關(guān)的計算(如果需要的話)。通常叫做業(yè)務(wù)訪問層(BAL)。
Projects into \Plugins\ solution folder
Plugins是VS的解決方案文件夾,硬盤中它是在你解決方案的根目錄下。由于項目在編譯時的輸入路徑是”..\..\Presentation \Nop.Web\Plugins\{Group}.{Name}\”,這樣插件的DLL會自動地放到 \Presentation\Nop.Web\Plugins\文件夾中,用來放置已部署插件。這樣也能讓插件包含靜態(tài)文件比如CSS或JS,就不用在項 目之間拷貝這些文件了。
\Presentation\Nop.Admin
Nop.Admin是一個MVC?Web應(yīng)用程序項目。如果你還沒有使用過ASP.NET MVC,請在這里了解更多的信息。可能你已經(jīng)猜到這是表示層中的管理后臺,你可以在 \Presentation\Nop.Web\Administration文件夾中找到它,該項目不能運行。
\Presentation\Nop.Web
Nop.Web也是一個MVC?Web應(yīng)用程序項目,前臺網(wǎng)店的表示層,這個才是你真正要運行的項目,它也是整個應(yīng)用程序的起始項目。
\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是一個類庫,包含其它測試項目中要用的一共有類和輔助方法。它不具有任何測試用例。
\Test\Nop.Web.MVC.Tests
Nop.Web.MVC.Tests is?是?表示層的測試項目。
總結(jié)
以上是生活随笔為你收集整理的nopcommerce商城系统--源代码结构和架构的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: View结合组策略进行应用程序下发
- 下一篇: JAVA引用和垃圾回收