亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

MzBlog分析

2019-11-15 02:26:28
字體:
來源:轉載
供稿:網友

MzBlog分析

早上衣明志 在QQ群里說他的博客開源了,地址在 https://github.com/qihangnet/MZBlog,基于NancyFX和MongoDB開發的。博客內容需要使用 MarkDown 進行編寫。Nancy框架是asp.net之外用.NET開發Web App的一種選擇,而且也是一種很簡單的選擇。所以本文本著學習Nancy 框架的分析了下衣大哥的代碼,下圖是個腦圖:

MzBlog分析

1、MongoDB:數據存儲采用NoSQL MongoDB,采用官方的驅動 mongocsharpdriver。

2、核心庫的測試項目MZBlog.Core.Tests:項目采用xUnit.NET測試框架,xUnit.net創造者是Jim Newkirk和Brad Wilson從包括NUnit及其它單元測試框架的使用經驗中總結出來的一個新框架,相比于NUnit,xUnit.net和其他框架的比較可參考《xuint和其他的單元測試框架的比較》。另外FluentAssertions,非常棒的測試斷言。非常符合人的思維模式。

3、項目分層:項目采用DDD(領域模型)的典型層次,包括了表現層,應用層,領域層和基礎設施層,MZBlog.Core其實對應著基礎設施層,不過這里的并不是指領域模型中的基礎設施,更恰當的說應該是一些普通項目的核心層,封裝一些常用的工具和服務,例如緩存、MongoDB操作。

MZBlog.Core的Documents、ViewPRojections、Commands 對應的是MongoDB的領域層,領域層進行細分,會出現一些專門對應的一些領域核心層,領域核心實體擴展層。

  1. 領域核心層:這個層專門用于進行對領域層的擴展:用于定義一些領域中常用模式的接口,屬于上層建筑。如ICommandInvoker,IViewProjection等,
  2. 領域核心擴展層:這個層專門用于對領域層中的實體進行擴展,如ViewProjections、Commands 等。

MZBlog.Web是應用層和表現層,同時也是對Nancy框架的一個應用的示例。

4、Nancy框架:Nancy是一個不錯的輕量級開源.NET Web框架,他是asp.net框架之外的另一個web開發框架,他完全不依賴于System.Web.只為簡單的Web開發做最基礎的準備,以Nancy寫的Web應用,可以輕松部署在linux上,而不必受服務器操作系統的限制,衣明志的博客 就是在Linux上跑的,Web服務器使用的Jexus。

  1. Bootstrapper,類似與ASP.Net項目里的Global.asax,定義了應用的生命周期,繼承了NancyBootstrapper類后可以重寫基類的許多方法,比如applicationStartup
  2. Security: Nancy的身份驗證組件——Nancy.Authentication.Forms,你可以到nuget上獲得。由于Nancy的運行機制跟ASP.NET幾乎沒有關聯,到可以移步到Forms authentication with nancyfx看看它是怎么實現的。
  3. Responses:Http響應,項目中有個rssResponse,封裝了博客的RSS功能。
  4. Modules:Nancy Web App的核心,繼承NancyModule這個基類,然后在構造里直接定義HTTP方法和路由即可,路由機制簡單輕量但不失強大,可以方便的通過正則表達式制定路由規則。和ASP.NET相比非常簡單吧,Nancy框架天生就是MVC結構,Modules類似于ASP.NET MVC的Controller。
  5. Modelbinding:類似于asp.net mvc的ModelBinding,具體參看https://github.com/NancyFx/Nancy/wiki/Model-binding,擔負起Modules和Views之間數據傳遞的橋梁。
  6. Views: Nancy支持Razor, Spark, dotLiquid等視圖引擎,開發人員可以根據自己的喜好,選用不同的視圖引擎。MZBlog用的是Razor視圖引擎,你的ASP.NET MVC的知識可以無縫嫁接。
  7. ErrorHandling:異常處理,可以根據不同的http狀態碼進行處理,具體可以參考 Consistent error handling with Nancy。
  8. TinyIoC:Nancy集成了TinyIoC,TinyIoC是一個跨各種手機平臺的輕量級開源Ioc框架(TinyIoC),該框架非常小,只有一個cs文件就能使用,使用后感覺效果還不錯,基本容器功能都支持了。git開源項目地址:https://github.com/grumpydev/TinyIoC

5、Bootstrap是Twitter出名的一個優秀的web前端框架,它讓不太懂設計的web程序員們也能做出比較好看的UI來。Bootstrap3默認采用時下流行的扁平化設計,會讓你的web顯得很時尚.

6、Markdown 是一種輕量級標記語言,創始人為約翰·格魯伯(John Gruber)和亞倫·斯沃茨(Aaron Swartz)。它允許人們“使用易讀易寫的純文本格式編寫文檔,然后轉換成有效的XHTML(或者HTML)文檔”。這種語言吸收了很多在電子郵件中已有的純文本標記的特性。Markdown 語法可參考 http://wowUbuntu.com/markdown/

xUnit.net runner for Visual Studio 2012 and 2013

Lift your Petticoats with Nancy....

Setting up a NancyFX website

From ASP.NET MVC to Nancy - Part 1

擴展NoteService,支持NancyFx


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲www视频| 日韩视频在线免费观看| 欧美大人香蕉在线| 一区二区欧美久久| 国产精品人人做人人爽| 久久久久久久激情视频| 国产日韩欧美在线视频观看| 欧美大全免费观看电视剧大泉洋| 欧美夜福利tv在线| 国产日韩在线一区| 第一福利永久视频精品| 国产日产久久高清欧美一区| 午夜精品久久久久久久99黑人| 夜夜狂射影院欧美极品| 欧美日韩国产中文精品字幕自在自线| 97久久精品国产| 亚洲91精品在线| 中文欧美在线视频| 国产亚洲欧美aaaa| 浅井舞香一区二区| 日韩高清免费在线| 国产福利精品在线| 久久国产精品偷| 国产成人高潮免费观看精品| 亚洲成人精品久久久| 久久免费少妇高潮久久精品99| 国产做受69高潮| 555www成人网| 欧美性生交大片免费| 91亚洲精品在线观看| 成人综合网网址| 成人久久一区二区三区| 欧美激情精品久久久久久黑人| 亚洲男人的天堂网站| 国产在线不卡精品| 国产欧美va欧美va香蕉在| 久久色在线播放| 国产视频欧美视频| 精品动漫一区二区三区| 亚洲第一精品夜夜躁人人爽| 国产一区二区黑人欧美xxxx| 欧美一级在线播放| 国产精品精品久久久久久| 精品国产31久久久久久| 精品国内亚洲在观看18黄| 中文字幕亚洲欧美| 国产精品久久久久久久久久久久久久| 日韩免费电影在线观看| 色噜噜国产精品视频一区二区| 日本亚洲欧洲色α| 国产日韩精品电影| 国产精品美女久久久久av超清| 伊人伊成久久人综合网小说| 狠狠躁夜夜躁久久躁别揉| 韩国福利视频一区| 色噜噜狠狠狠综合曰曰曰88av| 日韩精品在线电影| 亚洲欧美精品在线| 色小说视频一区| 成人有码在线视频| 2019中文字幕在线免费观看| 色综合久久天天综线观看| www.欧美免费| 亚州成人av在线| 欧美极品xxxx| 国产一区二区三区久久精品| 亚洲国产女人aaa毛片在线| 日韩av中文在线| 欧美成人精品xxx| 中文字幕视频在线免费欧美日韩综合在线看| 亚洲精品久久久一区二区三区| 91精品视频播放| 久久久久中文字幕| 色妞色视频一区二区三区四区| 国产69精品99久久久久久宅男| 日韩最新在线视频| 久久久精品中文字幕| 岛国av一区二区三区| 日韩国产在线播放| 欧美性xxxx18| 欧美精品一本久久男人的天堂| 狠狠躁夜夜躁久久躁别揉| 韩国日本不卡在线| 亚洲第一av网站| 日韩视频精品在线| 国产69久久精品成人看| 国产精品老女人视频| 欧美性xxxxxx| 久久婷婷国产麻豆91天堂| 色777狠狠综合秋免鲁丝| 欧美日韩xxx| 亚洲精品国精品久久99热一| 91久久夜色精品国产网站| 亚洲国产精品人久久电影| 欧美xxxx18性欧美| 日韩免费观看在线观看| 亚洲精品日产aⅴ| 久久亚洲精品视频| 深夜福利亚洲导航| 性欧美亚洲xxxx乳在线观看| 日韩成人av网址| 91免费精品视频| 国产中文字幕日韩| 久久久成人精品| 欧美又大又硬又粗bbbbb| 欧美大尺度激情区在线播放| 国内精品久久久久伊人av| 国产视频999| 91在线观看免费| 日韩视频第一页| 成人网在线免费看| 精品日韩视频在线观看| 久久成年人免费电影| 久久亚洲精品毛片| 国产91精品久久久久久久| 中文字幕日本欧美| 国产日韩在线亚洲字幕中文| 亚洲男人天堂古典| 久久久久久成人精品| 欧美性xxxx极品高清hd直播| 亚洲欧美自拍一区| 97成人在线视频| 中日韩午夜理伦电影免费| 亚洲欧美激情在线视频| 91精品免费久久久久久久久| 97精品视频在线| 国产香蕉精品视频一区二区三区| 午夜精品久久久久久99热| 原创国产精品91| 欧美性猛交xxxx免费看漫画| 尤物yw午夜国产精品视频| 精品欧美aⅴ在线网站| 久久人人爽人人| 国产精品丝袜久久久久久不卡| 国产主播喷水一区二区| 国产精品日韩欧美大师| 久久免费精品视频| 中文字幕欧美日韩| 色老头一区二区三区在线观看| www.亚洲一二| 国内精品小视频在线观看| 97视频在线播放| 国内精品模特av私拍在线观看| 亚洲色图欧美制服丝袜另类第一页| 久久91精品国产91久久跳| 国产精品免费久久久久久| 国产精品永久在线| 久久精品国产亚洲精品2020| 欧美激情视频一区二区| 777精品视频| 亚洲精品福利在线| 丝袜一区二区三区| 亚洲黄色片网站| 日韩精品在线免费| 久久夜色精品国产| 色妞一区二区三区| 9.1国产丝袜在线观看| 九九热这里只有精品6| 欧美亚洲视频在线观看| 欧美激情精品久久久久久免费印度| 国产精品永久免费观看| 亚洲高清久久久久久| 国产成人福利视频| 亚洲精品自拍偷拍|