.NET Core第三方開源Web框架YOYOFx

YOYOFx框架

YOYOFx是一個輕量級用於構建基於 HTTP 的 Web 服務,基於 .NET 和 Mono 平臺。html

本着學習的態度,造了這個輪子,也是爲了更好的瞭解各個框架的原理和有點,還但願能夠和你們多交流 。git

GitHub:https://github.com/maxzhang1985/YOYOFxgithub

YOYOFx是支持Owin協議的MVC框架,基於NETStandard1.6和NET451編譯,完美支持在Core和full framework(如.net framework 4.5x或mono 4.x)上的運行。緩存

YOYOFx集成了dotnet core上「第一款」驗證碼組件,驗證碼的實如今之前的文章裏提過,《【乾貨】」首個「 .NET Core 驗證碼組件 》。框架

特性: YOYOFx的Mvc是基於Owin跑在Core的Web框架 , YOYOFx並無基於Asp.Net Core MVC進行開發,而選擇了使用Owin協議本身來封裝Http協議的方式。函數

跨平臺特性:

  • .NET framework 4.5x和Mono4.x上直接SelfHost或使用Tinyfox跨平臺運行;
  • .NET Core 1.0 RTM 實現跨平臺運行;
  • 使用Tinyfox獨立版,可支持綠色部署,不須要安裝Mono和Framework。
  • 經過dotnet publish將Core版本進行打包後,可支持綠色部署,不須要運行時。

Owin與Core

YOYOFx的Http實現都是基於Owin協議的,並提供兩個獨立版本NETSTANDRD1.x和NET45x版本。post

目前完成:

  1. 封裝Owin協議的HttpContext(IOwinContext),包括Request、Response、Http Headers、Cookie等;
  2. 路由機制,經過添加自定義路由表爲框架添加處理事件;
  3. 基於IOwinContext的MVC框架,支持多語言擴展;支持Session和自定義的Action攔截器;
  4. 可替換的視圖引擎,目前實現Razor視圖引擎,加入了緩存機制;
  5. 已移植到dotnet core 1.0 RTM版本

接下來的工做:

  1. 將項目的目錄結構整合到dotnet core的項目文件中。 (已完成)
  2. 完成框架總體的DI,將框架級依賴對象所有經過依賴注入的方式構建和對象建立工廠;首先完成Controller的建立工廠。 (已完成)
  3. 完善路由系統 (進行中)
    • 支持方法特性[HttpGet] [HttpPost] 等定義路由。
    • 支持自定義路由路徑。
    • 支持爲路由規則指定特定的Handler處理函數。

 

YOYOFx還很是不完善,只完成了最基本的功能,不過我會堅持寫下去,堅持開源,爲開源社區作那麼一點點的貢獻。學習

GitHub:https://github.com/maxzhang1985/YOYOFx  Star下, 歡迎一塊兒交流。spa

 .NET Core 和 YOYOFx 的交流羣: 214741894 .NET Core跨平臺 .net

若是你以爲本文對你有幫助,請點擊「推薦」,謝謝。

相關文章
相關標籤/搜索