天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

Microsoft NLayerApp案例理論與實(shí)踐 - 項(xiàng)目簡(jiǎn)介與環(huán)境搭建

  項(xiàng)目簡(jiǎn)介

  Microsoft – Spain團(tuán)隊(duì)有一個(gè)很不錯(cuò)的面向領(lǐng)域多層分布式項(xiàng)目案例:Microsoft – Domain Oriented N-Layered .NET 4.0 App Sample(在本系列文章中,我使用NLayerApp作為該項(xiàng)目的名稱進(jìn)行介紹),在codeplex上的地址是:http://microsoftnlayerapp.codeplex.com/

  它是學(xué)習(xí)領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(DDD)的一個(gè)非常不錯(cuò)的案例項(xiàng)目。該項(xiàng)目采用的是經(jīng)典的DDD架構(gòu),而不是CQRS架構(gòu),但我覺得整個(gè)案例做的非常不錯(cuò),基本上包含了基于DDD的架構(gòu)實(shí)踐的各個(gè)方面。因此,應(yīng)不少社區(qū)朋友的要求,我打算花一部分精力來寫一個(gè)介紹該項(xiàng)目理論與實(shí)踐的系列文章。這部分系列文章將分為兩個(gè)部分:

  1. 原理部分:這部分介紹Microsoft NLayerApp的一些理論依據(jù),包括架構(gòu)設(shè)計(jì)原則、分層架構(gòu)、DDD、Distributed DDD、面向?qū)ο蠓治雠c設(shè)計(jì)等。事實(shí)上,microsoftnlayerapp.codeplex.com站點(diǎn)上已經(jīng)有一些文檔對(duì)這部分內(nèi)容作了介紹,因此,原理部分的內(nèi)容我將基本上是對(duì)這些英文文檔進(jìn)行翻譯整理,然后再添加一些自己的注釋,這樣做的好處是,能夠就整個(gè)企業(yè)級(jí)項(xiàng)目的開發(fā)與設(shè)計(jì)為讀者提供一套相對(duì)系統(tǒng)全面的學(xué)習(xí)材料。NLayerApp的官方站點(diǎn)本身也在做西班牙語(yǔ)到英語(yǔ)的翻譯工作,所以這部分英文文檔也并不全面,我會(huì)在新英文版文檔發(fā)布后,在此相應(yīng)地添加所缺失的部分
  2. 實(shí)踐部分:這部分將對(duì)整個(gè)NLayerApp Solution的結(jié)構(gòu)、各個(gè)邏輯層、各種用到的技術(shù)進(jìn)行剖析和介紹。與原理部分不同,此部分內(nèi)容更關(guān)注技術(shù)的具體實(shí)現(xiàn)細(xì)節(jié),而不是去討論什么是面向?qū)ο螅裁词欠謱蛹軜?gòu)等基礎(chǔ)性問題

  注意:Microsoft – Spain團(tuán)隊(duì)一直以Domain Oriented一詞來形容這個(gè)項(xiàng)目,而不是用Domain Driven Design,原因是,Domain Driven Design包含的內(nèi)容,不僅僅是某一種架構(gòu)技術(shù),它還包含軟件項(xiàng)目的開發(fā)方式、開發(fā)團(tuán)隊(duì)的協(xié)作管理、用于領(lǐng)域?qū)<液蛙浖藛T之間的通用語(yǔ)言的創(chuàng)建等內(nèi)容。然而,在整個(gè)NLayerApp項(xiàng)目中,并沒有用到DDD的所有這些內(nèi)容,項(xiàng)目的范圍僅限于邏輯/技術(shù)層面的架構(gòu)設(shè)計(jì)。

  NLayerApp項(xiàng)目環(huán)境搭建

  在開始這個(gè)系列文章之前,先讓我們把NLayerApp的項(xiàng)目環(huán)境搭建好。在搭建環(huán)境之前,請(qǐng)檢查你的電腦是否滿足下面的先決條件:

  請(qǐng)按下面的步驟安裝和配置NLayerApp:

  1. 完成上述開發(fā)包的安裝和配置(最后兩項(xiàng)可以不安裝,本系列文章沒有用Windows Server AppFabric和Azure的功能)
  2. 下載NLayerApp v1.0的壓縮包,地址是:http://microsoftnlayerapp.codeplex.com/releases/view/56660,選擇V1.0 - N-Layer DDD Sample App NET4.0,本系列文章將使用這個(gè)版本進(jìn)行介紹
    image
  3. 解壓縮下載完的zip包,包含三個(gè)文件夾:CORE、CORE-APPFABRIC和CORE-AZURE。本系列文章沒使用AppFabric和Azure,所以,直接進(jìn)入CORE目錄
  4. 暫時(shí)直接無視Tests,所以,雙擊打開NLayerAppWithoutTesting.sln解決方案
  5. 這個(gè)解決方案沒有將Infrastructure.Data.MainModule.Mock項(xiàng)目添加進(jìn)來,這會(huì)導(dǎo)致Infrastructure.CrossCutting.IoC項(xiàng)目無法編譯通過。在Visual Studio中,將解決方案展開到1.5.1 Data節(jié)點(diǎn),在該節(jié)點(diǎn)上右鍵單擊,選擇Add | Existing Project,然后在CORE的Infrastructure.Data.MainModule.Mock目錄下選擇Infrastructure.Data.MainModule.Mock.csproj項(xiàng)目文件,并單擊Open按鈕
  6. Server Explorer中,右鍵單擊Data Connections節(jié)點(diǎn),選擇Create New SQL Server Database選項(xiàng)
    image
  7. 在打開的Create New SQL Server Database對(duì)話框中,填入你的Server地址,然后輸入數(shù)據(jù)庫(kù)名稱,再單擊OK按鈕。本案例使用SQL Express(with Windows Authentication),使用默認(rèn)的數(shù)據(jù)庫(kù)名稱NLayerApp
    image

    你完全可以選擇自己定義的SQL Server和數(shù)據(jù)庫(kù)名稱,如果你是使用自己定義的SQL Server和數(shù)據(jù)庫(kù)的話,請(qǐng)同時(shí)修改2 – Database節(jié)點(diǎn)下NLayerAppDatabase項(xiàng)目的屬性:右鍵單擊NLayerAppDatabase項(xiàng)目,選擇Properties,在Property頁(yè)的Deploy選項(xiàng)卡中修改相關(guān)參數(shù):
    image
  8. 右鍵單擊NLayerAppDatabase項(xiàng)目,然后單擊Deploy,這將創(chuàng)建數(shù)據(jù)庫(kù)Schema
  9. 編譯整個(gè)解決方案
  10. 1.2 – Distributed Services節(jié)點(diǎn)下,找到DistributedServices.Deployment項(xiàng)目,右鍵單擊項(xiàng)目下的MainModule.svc文件,選擇View in Browser,以啟動(dòng)WCF服務(wù)
    image
  11. 啟動(dòng)用戶界面。NLayerApp v1.0提供以下幾種用戶界面:基于RIA的Silverlight 4.0 Client,基于Web的ASP.NET MVC Client,基于Windows的WPF Client
    基于RIA的Silverlight 4.0 Client
    右鍵單擊Silverlight.Client.Web項(xiàng)目下的Silverlight.Client.Web.html文件,選擇View in Browser,則啟動(dòng)基于RIA的Silverlight 4.0 Client
    image
    基于Web的ASP.NET MVC Client
    MVC.Client項(xiàng)目設(shè)置為啟動(dòng)項(xiàng)目并直接運(yùn)行,可以啟動(dòng)基于Web的ASP.NET MVC Client
    image
    可能是我瀏覽器版本低的緣故,得到的ASP.NET MVC頁(yè)面布局有點(diǎn)亂
    基于Windows的WPF Client
    WPF.Client項(xiàng)目設(shè)置為啟動(dòng)項(xiàng)目并直接運(yùn)行,可以啟動(dòng)基于Windows的WPF Client
    image

  本文介紹了NLayerApp項(xiàng)目的基本情況和環(huán)境搭建。從下一講開始,我們將進(jìn)入架構(gòu)設(shè)計(jì)的理論學(xué)習(xí)部分,包括:分層架構(gòu)、SOLID與設(shè)計(jì)原則、面向領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(DDD)的架構(gòu)趨勢(shì)以及分布式DDD(Distributed DDD,DDDD)。這部分內(nèi)容將主要來自于NLayerApp官網(wǎng)(microsoftnlayerapp.codeplex.com)提供的英文文檔,daxNET將在此做翻譯、整理與注解。

NET技術(shù)Microsoft NLayerApp案例理論與實(shí)踐 - 項(xiàng)目簡(jiǎn)介與環(huán)境搭建,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产精品 中文字幕 亚洲 欧美 | 伊人久久亚洲精品一区 | 成人天堂资源WWW在线 | 久久久久久久网 | 男男女女爽爽爽视频免费 | 免费在线观看国产 | 国偷自产视频一区二区99 | 羞羞一区二区三区四区片 | 儿子你得太大了慢点插 | 亚洲精品一区国产欧美 | 九九热精品免费观看 | 欧美精品色婷婷五月综合 | xhameter中国| 国产精品久久久久久人妻香蕉 | 18禁黄无遮挡禁游戏在线下载 | 成人精品综合免费视频 | 午夜伦理 第1页 | 亚洲精品九色在线网站 | 久久yy99re66| 日日踫夜夜爽无码久久 | 亚洲午夜福利未满十八勿进 | 久久精品亚洲AV无码三区观看 | 正在播放国产尾随丝袜美女 | 国产精品手机在线视频 | 国产呦精品一区二区三区下载 | 亚洲视频中文字幕在线 | 在线亚洲中文精品第1页 | 一个人的免费完整在线观看HD | 国产精品色午夜视频免费看 | 国产色精品久久人妻99蜜桃麻豆 | 亚洲精品无码AV中文字幕蜜桃 | CHINESE熟女老女人HD视频 | 国产成人AV永久免费观看 | 伊人久久大香线蕉综合电影网 | 中国老女人xxhd69 | 中国午夜伦理片 | 思思99热久久精品在线6 | 男人和女人一级黄色大片 | 神马午夜不卡片 | 欧美hdxxxx| 亚婷婷洲AV久久蜜臀无码 |