似乎...很久很久沒有寫博客了,一直都想寫兩篇,但是卻沒有時間寫。感覺最近有很多事情需要處理,一直都是疲於奔命,一直到最近才變得有些時間學習和充電。最近沒有事情都會看一些博客和開源項目,發現介紹開源項目的文章似乎有些舊,而且很多介紹開源項目的文章都有比較相似的地方,畢竟.NET很好很實用的項目的確有 ...
似乎...很久很久沒有寫博客了,一直都想寫兩篇,但是卻沒有時間寫。感覺最近有很多事情需要處理,一直都是疲於奔命,一直到最近才變得有些時間學習和充電。最近沒有事情都會看一些博客和開源項目,發現介紹開源項目的文章似乎有些舊,而且很多介紹開源項目的文章都有比較相似的地方,畢竟.NET很好很實用的項目的確有限。
很多人也想瞭解一下最新和感覺有用的.NET開源項目,但是又沒有時間去GitHub去逐一的看。感覺自己沒事就花了幾個小時,去GitHub看了搜索到的1000個項目,個人覺得比較實用的項目就自己做了一個整理。(備註:很多比較新的和比較厲害的組件和項目沒有寫入,因為很多文章都已經介紹過了,而且很多人也使用了,所以就沒有怎麼介紹)
最近忙著在做“線上協議”的方案,整個方案都實現,但是卻陷入一個坑爹的場景,那就是線上協議需要借用UE對粘貼的文檔進行轉換為HTML,但是原始文檔的格式很容易出現問題,導致生成的HTML標記也會產生問題,已至後面的正式的協議PDF文件和World文件都會失真,想看看大家有沒有好的意見。(後面我會將目前的實現方案寫出來分享)
1.Akka.NET:
概述:更輕鬆地構建強大的併發和分散式應用。
簡介:Akka.NET是一個用於在.NET和Mono上構建高度併發,分散式和容錯的事件驅動應用程式的工具包和運行時。
開源地址:https://github.com/akkadotnet/akka.net
2.Topshelf:
概述:使用.NET構建Windows服務的簡單服務托管框架。
簡介:Topshelf是托管使用.NET框架編寫的服務的框架。服務的創建被簡化,允許開發人員創建一個簡單的控制台應用程式,可以使用Topshelf作為服務安裝。原因很簡單:調試控制台應用程式比服務容易得多。一旦應用程式經過測試並可以進行生產,Topshelf可以輕鬆安裝應用程式作為服務。
開源地址:https://github.com/Topshelf/Topshelf
3.IdentityServer3:
概述:OpenID Connect Provider和用於ASP.NET 4.x / Katana的OAuth 2.0授權伺服器框架。
簡介:IdentityServer是一個基於.NET / Katana的框架和可托管組件,允許使用OpenID Connect和OAuth2等協議實現對現代Web應用程式和API的單一登錄和訪問控制。它支持廣泛的客戶端,如移動,Web,SPA和桌面應用程式,並且是可擴展的,可以集成到新的和現有的架構中。
開源地址:https://github.com/IdentityServer/IdentityServer3
4.MediatR:
概述:在.NET中簡單的中介器實現。
簡介:進程內消息傳遞,無依賴關係。支持請求/響應,命令,查詢,通知和事件,通過C#通用方差進行智能調度的同步和非同步。
開源地址:https://github.com/jbogard/MediatR
5.MassTransit:
概述:.NET的分散式應用程式框架。
簡介:MassTransit可以輕鬆創建應用和服務,利用基於消息的鬆散耦合的非同步通信,實現更高的可用性,可靠性和可擴展性。
開源地址:https://github.com/MassTransit/MassTransit
6.microdot:
概述:一個開源的.NET微服務框架。
簡介:Microdot框架可幫助您創建可擴展和可靠的微服務(“微服務機架”),讓您專註於編寫定義服務邏輯的代碼,而無需解決開發分散式系統的無數挑戰。Microdot還可以很好地與 Orleans虛擬演員框架相結合,讓您輕鬆地編寫基於 Orleans微型服務。
開源地址:https://github.com/gigya/microdot
7.Docker.DotNet:
概述:用於Docker API的.NET(C#)客戶端庫。
簡介:與 .NET應用程式中的Docker Remote API端點進行交互。它是完全非同步的,旨在以非阻塞和麵向對象的方式通過編程方式與Docker守護程式進行交互。
開源地址:https://github.com/Microsoft/Docker.DotNet
8.Z.ExtensionMethods:
概述:C#擴展方法| .NET開源和免費庫
簡介:通過超過1000種擴展方法增強.NET Framework。
開源地址:https://github.com/zzzprojects/Z.ExtensionMethods
9.SuperWebSocket:
概述:SuperWebSocket是WebSocket伺服器的.NET實現。
簡介:WebSocket是通過單個傳輸控制協議(TCP)插座提供雙向,全雙工通信通道的技術。它被設計為在Web瀏覽器和Web伺服器中實現,但它可以被任何客戶端或伺服器應用程式使用。SuperWebSocket被合併到SuperSocket作為附加模塊SuperSocket.WebSocket。您可以使用SuperSocket.WebSocket用相同的方式SuperWebSocket但有不同的命名空間。
開源地址:https://github.com/kerryjiang/SuperWebSocket
10.Seal-Report:
概述:開放資料庫報表工具(.Net)
簡介:Seal-Report提供了一個完整的框架,用於從任何資料庫生成日常報告和儀錶板。Seal-Report是Microsoft .NET Framework完全用C#編寫的開源工具。
開源地址:https://github.com/ariacom/Seal-Report
11.accord-net-extensions:
概述:先進的圖像處理和電腦視覺演算法作為流暢的擴展而構建為可移植性。
簡介:Accord.NET Extensions是Accord.NET和AForge.NET的擴展框架。框架集中將.NET本地數組作為主要成像對象,並提供大多數構建為擴展的電腦視覺演算法。
開源地址:https://github.com/dajuric/accord-net-extensions
12.MediaToolkit:
概述:用於轉換和處理所有視頻和音頻文件的.NET庫。
簡介:MediaToolkit為處理媒體數據提供了一個簡單的界面,完成了輕鬆轉換,切片和編輯音頻和視頻等任務。在引擎蓋下,MediaToolkit是一個用於FFmpeg的.NET包裝器; 一個包含多個音頻和視頻編解碼器的免費(LGPLv2.1)多媒體框架,支持多種媒體格式的多路復用,解復用和轉碼任務。(從視頻抓住縮略圖,檢索元數據,基本轉換,將Flash視頻轉換為DVD,轉碼選項FLV到MP4,將視頻縮小到較小的長度)
開源地址:https://github.com/AydinAdn/MediaToolkit
13.htmldiff.net:
概述:.NET的Html Diff演算法。
簡介:用於比較兩個HTML文件/片段的庫,並使用簡單的HTML突出顯示差異。這個HTML Diff實現是在這裡找到的ruby實現的C#埠。
開源地址:https://github.com/Rohland/htmldiff.net
14.CalbucciLib.ExtensionsGalore:
概述:.NET中內置類型和類的擴展的100個擴展。
簡介:ExtensionsGalore是一個庫,可以擴展.NET的許多常見類型和類別,以便快速方便地訪問Web和移動開發的常見場景。換句話說,它可以幫助您編寫更少的代碼行,並將更多的焦點集中在應用程式中。
開源地址:https://github.com/calbucci/CalbucciLib.ExtensionsGalore
15.Dapper:
概述:Dapper - 一個簡單的對象映射器.Net
簡介:Dapper的一個關鍵特性是性能。
開源地址:https://github.com/StackExchange/Dapper
以上只是簡單的介紹了一些開源項目,後面如果有時間和精力,會寫一些組件和開源項目的介紹,如果大家也有覺得比較好的項目,也可以在博客下麵留言分享,讓大家一起學習。