高效實用的.NET開源項目

来源:http://www.cnblogs.com/pengze0902/archive/2017/10/15/7669631.html
-Advertisement-
Play Games

似乎...很久很久沒有寫博客了,一直都想寫兩篇,但是卻沒有時間寫。感覺最近有很多事情需要處理,一直都是疲於奔命,一直到最近才變得有些時間學習和充電。最近沒有事情都會看一些博客和開源項目,發現介紹開源項目的文章似乎有些舊,而且很多介紹開源項目的文章都有比較相似的地方,畢竟.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

    以上只是簡單的介紹了一些開源項目,後面如果有時間和精力,會寫一些組件和開源項目的介紹,如果大家也有覺得比較好的項目,也可以在博客下麵留言分享,讓大家一起學習。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 能在Linux中運行的文本編輯器很多,每個人喜歡的也不一樣。各種不同的Linux發行版一定會內置Vi編輯器,其它編輯器可能不會內置,需要自己安裝。所以必須學會Vi的使用,以應對在新的Linux環境。Vim編輯器是Vi編輯器的升級版,功能比Vi強大,並且相容Vi的操作。所以我就直接學習Vim編輯器。( ...
  • 在說明如何穩定安全地升級、降級已經在運行中的nginx之前,需要先瞭解nginx支持的幾種信號。以下幾種是主進程可以接收的信號,註意worker進程也可以接收一些信號,但和主進程的信號處理機制有些不一樣,且主進程支持的信號worker進程不一定支持。具體可見man nginx。 graceful s ...
  • 當程式在測試或者老化的時候很有用,只要程式有異常拋出,就能啟用windbg調試,這樣就能及時的保存現場。 程式崩潰時,windows系統會調用系統預設調試器,其設置在註冊表 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion ...
  • 本文目錄:1 編譯nginx2 編譯php3 配置nginx和php-fpm交互 1. 編譯nginx rpm包格式的nginx地址:http://nginx.org/packages/源碼包下載地址:http://nginx.org/en/download.html 。本文下載的是最新穩定版ngi ...
  • 一、apache、php、mysql安裝 安裝順序:apache/mysql 最後安裝php 前兩者順序無所謂。 1.安裝apache 需要伺服器聯網 安裝:yum install -y httpd 運行:/bin/systemctl start httpd.service 執行完運行命令之後是看不 ...
  • 新增與移除使用者: useradd, 相關配置文件, passwd, usermod, userdel 我們登入系統時會輸入 (1)賬號與 (2)密碼,所以建立一個可用的賬號同樣的也需要這兩個數據。那賬號可以使用 useradd 來新建用戶, 密碼的給予則使用 passwd 這個指令!這兩個指令下達 ...
  • aspx類的驗證碼處理程式,隨後還會記錄一般程式的的驗證碼類 1 using System; 2 using System.Collections.Generic; 3 using System.Web; 4 using System.Web.UI; 5 using System.Web.UI.We ...
  • - 我們在做http請求的時候如果想讓返回的格式以json字元串返回: httpClient.DefaultRequestHeaders.Add("Accept","application/json;odata=verbose"); HttpClient中有有參構造函數,其中的有參構造函數包括有參數 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...