Awesome DotNet,這又是一個 Awesome XXX 系列的資源整理,由 quozd 發(fā)起和維護。內(nèi)容包括:編譯器、壓縮、應用框架、應用模板、加密、數(shù)據(jù)庫、反編譯、IDE、日志、風格指南等。
(注:下面用 [$]?標注的表示收費工具,但部分收費工具針對開源軟件的開發(fā)/部署/托管是免費的)
API
框架
NancyFx:輕量、用于構(gòu)建 HTTP 基礎服務的非正式(low-ceremony)框架,基于.Net 及 Mono 平臺。
ASP.NET WebAPI:快捷創(chuàng)建 HTTP 服務的框架,可以廣泛用于多種不同的客戶端,包括瀏覽器和移動設備。
ServiceStack:架構(gòu)縝密、速度飛快、令人愉悅的 web 服務。
Nelibur:Nelibur 是一個使用純 WCF 構(gòu)建的基于消息的 web 服務框架。Nelibur 可以便捷地創(chuàng)建高性能、基于消息的 web 服務,使得你全面擁有 WCF 的強大能力。
WebAPI Contrib:幫助你提高 ASP.NET Web API 能力的開源項目集合。
應用框架(Application Frameworks)
ASP.NET Boilerplate:現(xiàn)代 ASP.NET MVC web 應用程序的入門,包含最佳實踐和最流行的工具。
Orleans:Orleans 框架提供了直接構(gòu)建分布式、大規(guī)模計算應用的方法,無需學習和使用復雜的并行或擴展模型。
CoreFX:corefx 倉庫包含了 .NET 核心功能庫的實現(xiàn)(被稱為“CoreFX”)。包含了 System.Collections、System.IO、System.Xml 以及諸多其它組件。目前構(gòu)建并運行于 Windows 平臺。你可以關(guān)注這個倉庫,了解在未來的幾個月內(nèi)即將增加的對 Linux 和 Mac 的支持。
CSLA .NET:業(yè)務層開發(fā)框架http://www.cslanet.com。
Mono:Mono 是 ECMA CLI、C# 以及 .NET 的開源實現(xiàn)。
Mono-Addins:Mono.Addins 是一個通用框架,用于創(chuàng)建可擴展的應用程序,以及這些應用程序的擴展插件。
Spring.Net:Spring.NET 是一個開源的應用程序框架,可以便捷地創(chuàng)建企業(yè)級 .NET 項目。
應用模板(Application Templates)
MVC.Template:ASP.NET MVC 5 入門項目模板。
ProjectScaffold:F# 基金會推薦的 .NET 解決方案的原型——包括文件系統(tǒng)的搭建、用于管理依賴的 Paket 以及用于自動化構(gòu)建、測試的 FAKE。默認情況下,構(gòu)建流程也會對文檔進行編譯,并生成 NuGet 程序包。
Side-Waffle:包含大量有用的 Web 和桌面開發(fā)模板。
Template10:帶有設計模式的 Windows 10 模板。
人工智能(Artificial Intelligence)
AIMLBot(Program#):使用 C# 編寫的一個小型、快速、兼容標準、易于定制的聊天機器人,基于 AIML (人工智能標記語言 Artificial Intelligence Markup Language)。
SIML:智能綜合智能標記語言(Synthetic Intelligence Markup Language),下一代聊天機器人及數(shù)字助手語言。
程序集處理(Assembly Manipulation)
dnSpy:dnSpy 是一個 .NET 程序集編輯器、反編譯器和調(diào)試器,來自 ILSpy 分支。
Fody:織入(weaving).net 程序集的可擴展工具。
Mono.Cecil:Cecil 類庫用于生成和檢查 ECMA CIL 程序和庫。
資源(Assets)
Cassette:管理 .NET web 應用程序資源(腳本、css 和 模板)
NodeAssets:.net 資源管理器,通過 SignalR 實時更新 css,也可以使用 NodeJS 編譯器。
Bundler:編譯和最小化 Less、Sass、Stylus、Css、JS、CoffeeScript、LiveScript?文件。MVC集成了 MVC?和 ServiceStack。
SquishIt:讓你輕松合并一些 css 和 javascript。
認證和授權(quán)(Authentication and Authorization)
ASP.NET Identity:用于 ASP.NET 應用程序的新身份系統(tǒng)。
DotNetOpenAuth:OpenID、OAuth 和 InfoCard 協(xié)議的一個 C# 實現(xiàn)。
Logibit Hawk:一個 F#Hawk認證庫。
IdentityModel:.NET 4.5 和 MVC4、Web API 身份和訪問控制的輔助庫。
IdentityServer:可擴展的 OAuth2 和 OpenID 連接提供程序框架。
OAuth:超輕量級 OAuth 1.0a 簽名生成庫,C# 編寫。
自動構(gòu)建(Build Automation)
Psake:基于 .NET 的自動化構(gòu)建工具,使用 PowerShell 編寫。
FAKE:F# Make,一個跨平臺自動構(gòu)建系統(tǒng)。
Invoke-Build:PowerShell 自動構(gòu)建和測試工具,靈感來自 Psake。
MSBuild:微軟構(gòu)建引擎(MSBuild)是 .NET 和 Visual Studio 的構(gòu)建平臺。
Cake:Cake(C# Make)使用 C# DSL 的跨平臺自動構(gòu)建系統(tǒng)。
緩存(Caching)
CacheCow:ASP.NET Web API HTTP 客戶端和服務器端緩存實現(xiàn)。
Akavache:一個異步、持久化的鍵值存儲。
CLI
Command Line Parser:Command Line Parser 類庫為 CLR 應用程序提供了一套簡潔的 API,用于處理命令行參數(shù)及相關(guān)任務。
Fluent Command Line Parser:一個簡單、強類型的 .NET C# 命令行解析庫,交互方式流暢易用。
Power Args:PowerArgs 將命令行參數(shù)轉(zhuǎn)換為 .NET 對象,便于程序使用。它還提供了大量可選的擴展,例如參數(shù)校驗、自動生成使用幫助、tab 補全等等。
UnionArgParser:針對 F# 應用程序的聲明式 CLI 參數(shù)和 XML 配置解析器。
CLR
CoreCLR:coreclr repo 包含了完整的 .NET 核心運行時實現(xiàn)(稱為“CoreCLR”)。它包括 RyuJIT、.NET GC、非托管代碼交互(native interop)等諸多組件。它目前構(gòu)建和運行于 Windows 平臺。你可以關(guān)注這個倉庫,了解未來的幾個月內(nèi)即將增加的對 Linux 和 Mac 的支持。
CMS
Composite C1:一個 web 內(nèi)容管理系統(tǒng),著重在用戶體驗及適應性。
mojoPortal:MojoPortal 是一個可擴展、跨數(shù)據(jù)庫、移動友好的 web 內(nèi)容管理系統(tǒng)(CMS)和 web 應用程序框架,使用 C# ASP.NET 編寫。
N2CMS:開源、輕量、代碼優(yōu)先的 CMS,可以無縫地集成到任何 MVC 項目中。
Orchard:免費、開源、專注社區(qū)的項目,目標是在 ASP.NET 平臺上提供應用程序和可重用組件。
Piranha CMS:Piranha 是一個有趣、快速、輕量級的 .NET 框架,用于開發(fā)基于 cms 附帶其它功能的 web 應用程序。它基于 ASP.NET MVC 和 Web 頁面創(chuàng)建,完全兼容 Visual Studio 和 WebMatrix。http://piranhacms.org
Umbraco:Umbraco 是一個免費開源的內(nèi)容管理系統(tǒng),基于 ASP.NET 平臺構(gòu)建
代碼分析和度量(Code Analysis and Metrics)
CodeMaid:Visual studio 擴展,用于清理、挖掘和簡化 C#、C++、F#、VB、PHP、JSON、XAML、XML、ASP、HTML、CSS、LESS、SCSS、JavaScript 和 TypeScript 代碼。
StyleCop:StyleCop 使用一組風格和一致性規(guī)則,對 C# 源代碼進行分析和強制性檢查。
Gendarme:可擴展的、基于規(guī)則的工具,用于在 .NET 應用程序和類庫中查找問題。
Metrics-Net:捕獲 CLR 和應用程序級別的度量值。所以你知道它的功能。
編譯器(Compiler)
Bridge.NET:將 C# 編譯成 JavaScript 的開源編譯器http://bridge.net/。
ClojureCLR:從 Clojure 到 CLR 的轉(zhuǎn)換,是 Clojure 項目的一部分。
F#:F# 編譯器、核心庫和工具——更安全、更快、代碼更好的函數(shù)式編程語言。
FunScript:F# 到 JavaScript 的編譯器,可以通過 TypeScript 類型提供程序使用 JQuery 等 JavaScript 庫。
JSIL:CIL 到 Javascript 的編譯器http://jsil.org/。
Mono-basic:Visual Basic 編譯器和運行時。
Nemerle:Nemerle 是一個 .NET 平臺高級靜態(tài)類型編程語言。它提供函數(shù)式、面向?qū)ο笫胶兔钍骄幊陶Z言的特性。它擁有一個簡單的類似 C# 的語法和強大的元編程(meta-programming)系統(tǒng)。http://nemerle.org
Netjs:.NET 到 TypeScript 和 JavaScript 編譯器。兼容可移植類庫。你甚至可以使用 EXE 文件。
Roslyn:.NET 編譯平臺(“Roslyn”)提供開源的 C# 和 Visual Basic 編譯器,包含豐富的代碼分析 API。它可以使用和 Visual Studio 一樣的 API 來構(gòu)建代碼分析工具。
VisualFSharp:Visual F# 編譯器和工具。
壓縮(Compression)
SharpCompress:SharpCompress 是一個用于 .NET、Mono、Silverlight、WP7?的壓縮類庫,可以解壓rar、7zip、zip、tar、bzip2 和 gzip,提供單向讀取和隨機文件訪問 API。支持對 zip/tar/bzip2/gzip 進行寫入的實現(xiàn)。
DotNetZip.Semverd:一個開源項目,提供對 ZIP 文件處理的 .NET 類庫和相關(guān)工具。 (分支自已經(jīng)不再維護的DotNetZip)
SharpZipLib:一個 Zip、GZip、Tar 和 BZip2 的類庫,完全由 C# 編寫,面向 .NET 平臺。
持續(xù)集成(Continuous Integration)
TeamCity:可以直接使用的,可擴展、面向開發(fā)人員友好的構(gòu)建服務器——開箱即用。[$]
CruiseControl.NET:一個自動化持續(xù)集成服務器,使用 .NET Framework 實現(xiàn)。
MyGet:為NuGet、NPM、Bower 和 VSIX 提供持續(xù)集成、部署、宿主程序包倉庫的服務。[開源軟件免費][$]
AppVeyor:.NET 持續(xù)構(gòu)建和部署服務。[$][開源軟件免費]
加密(Cryptography)
BouncyCastle:和 .Net 的 System.Security.Cryptography 一起,在 CLR 上提供加密算法的實現(xiàn)。
HashLib:HashLib 包含了幾乎所有你見過的哈希算法,它幾乎支持所有東西并且非常容易使用。
libsodium-net:libsodium for .NET——一個安全加密庫。
StreamCryptor:使用 libsodium 和 protobuf 對流進行加密和解密。
數(shù)據(jù)庫(Database)
BrightstarDb:BrightstarDB 是一個原生的 .NET RDF 三元組數(shù)據(jù)庫(triple store)。
Event Store:開源的功能性數(shù)據(jù)庫,支持使用 JavaScript 進行復雜事件處理。https://geteventstore.com
LiteDB:一個 .NET 的 NoSQL 單文件文檔數(shù)據(jù)庫。http://www.litedb.org
RavenDB:支持 linq 的 .NET 文檔數(shù)據(jù)庫。
數(shù)據(jù)庫驅(qū)動(Database Drivers)
MySQL Connector:完全托管的 MySQL?ADO.NET 數(shù)據(jù)庫提供程序、連接器。
Npgsql:Postgresql 的 .Net 數(shù)據(jù)提供程序。
MongoDB:MongoDB 官方 C# 驅(qū)動。
ServiceStack Redis:.NET 領(lǐng)先的 C# Redis 客戶端。
StackExchange Redis:來自 StackExchange 的通用 redis 客戶端。
Cassandra:DataStax 開發(fā)的 Apache Cassandra .NET 驅(qū)動程序。
Couchbase:couchbase 官方 .NET 客戶端庫,基于 Enyim memcached 客戶端。
Firebird.NET:由C# 編寫的 .NET 數(shù)據(jù)提供程序,提供對 Firebird API 的高性能原生實現(xiàn)。
反編譯(Decompilation)
ILSpy:ILSpy 是一個開源的 .NET 程序集查看器和反編譯器。
JustDecompile Engine:JustDecompile反編譯引擎。
部署(Deployment)
Unfold:基于 Powershell 的 .net web 應用程序部署解決方案。
DirectX
SlimDX:為 .NET 應用程序提供的 DirectX 封裝。
SharpDX:SharpDX 是一個開源項目,為 .Net 及所有 Windows 平臺提供完整的 DirectX API,可以開發(fā)高性能的游戲、2D/3D圖形渲染以及實時音頻應用程序。
分布式計算(Distributed Computing)
Project Orleans:Orleans 框架提供了直接構(gòu)建分布式、大規(guī)模計算應用的方法,無需學習和使用復雜的并行或擴展模型。由微軟研究院開發(fā)。
Akka.net:Akka.NET 是流行的 Java/Scala 框架 Akka 的 .NET 版本。它由社區(qū)提供,與 Typesafe(原始的 Java、Scala 版本的開發(fā)商)無關(guān)。
文檔(Documentation)
Sandcastle:Sandcastle 幫助文件生成器和 NDoc 類似。
SharpDox:一個 c# 文檔工具。
Swashbuckle:向 WebApi 項目無縫地添加 swagger 文檔(譯者注:swagger 是一套用于生成、描述、展現(xiàn) RESTful 風格 web 服務文檔的框架和規(guī)范)。
F# Formatting:F# 和 C# 項目的文檔工具,文檔生成自 F# 腳本文件、Markdown 文檔、內(nèi)嵌 XML 或 Markdown評論。
電子商務和支付(E-Commerce and Payments)
Paypal Merchant SDK:Paypal Merchant官方.NET SDK。
NopCommerce:nopCommerce。開源的電子商務購物車(ASP.NET MVC)。
ServiceStack.Stripe:針對 stripe.com REST API 的強類型 .NET 客戶端。
SmartStoreNET:免費 ASP.NET MVC 電子商務購物車解決方案。http://www.smartstore.com/net/en
Stripe.Net:Stripe.net 是針對http://stripe.com完整服務的 .net api。
BeYourMarket:BeYourMarket 是一個點對點的市場框架。http://beyourmarket.com
Virto Commerce:Virto Commerce 是第二個版本,也是唯一的開源許可下的企業(yè)級別電子商務產(chǎn)品。Virto Commerce 基于 .NET 4.5,使用了 MVC、IoC、EF、Azure、Angular JS 等其他先進技術(shù)。它可以在微軟的云平臺(Azure)、亞馬遜云服務(AWS)和企業(yè)內(nèi)部部署。http://virtocommerce.com
環(huán)境管理(Environment Management)
DNVM:.NET SDK 管理器,一組命令行工具,用于更新和配置需要使用的運行時環(huán)境(DNX)。
ETL
Reactive ETL:Reactive ETL 使用 .NET 反應性擴展框架(reactive extensions) 重寫了 Rhino ETL。
游戲(Game)
MonoGame:一個用來創(chuàng)建跨平臺游戲的強大框架。
CocosSharp:CocosSharp 是 Cocos2D 和 Cocos3D API 的 C# 實現(xiàn)版本,可以在所有支持 MonoGame 的平臺上運行。
Duality:Duality 是一個 2D 游戲開發(fā)框架。專注于功能的模塊化,自帶一個可視化編輯器。
Paradox:Paradox 游戲引擎。http://paradox3d.net
地理信息系統(tǒng)(Gis)
NetTopologySuite:一個 在 .NET 平臺上實現(xiàn)快速、可靠的 GIS 系統(tǒng)解決方案。
SharpMap:一個易于使用的地圖庫,可以用于 web 和桌面應用程序。
Git工具(Git Tools)
Bonobo Git Server:Bonobo Git Server for Windows 是一個 web 應用程序,可以安裝在你自己的 IIS 上,用于管理和連接你的 git 倉庫。http://bonobogitserver.com
GitExtensions:GitExtensions 包含資源管理器擴展、Visual Studio 2008/2010/2012/2013 插件和一個獨立的 Git 倉庫工具。http://gitextensions.github.io/
GitLink:讓用戶可以單步調(diào)試托管在 GitHub 或 BitBucket 上的代碼。
GitVersion:根據(jù)你的 Git 倉庫的狀態(tài)生成一個語義化版本號(Semantic Version Number)。
LibGit2Sharp:LibGit2Sharp 帶來了 libgit2 所有的功能和速度,是一個本地 Git 實現(xiàn),可以運行在 .Net 和 Mono 平臺。
NGit:NGit 是 JGit 移植到 C# 的版本。
posh-git:Git 的 PowerShell 環(huán)境。
圖形(Graphics)
Oxyplot:OxyPlot 是一個 .NET 跨平臺繪圖庫。
OpenTK:Open Toolkit 是一個封裝了 OpenGL、OpenCL 和 OpenAL 的 高級底層 C# 開發(fā)庫。
NGraphics:NGraphics 是一個 .NET 跨平臺矢量圖形渲染庫。
GUI
MahApps.Metro:用于創(chuàng)建 Metro 風格 WPF 應用的工具箱。
Callisto:用于 Windows 8 XAML 應用的控件工具箱。包含若干 UI 控件,讓你更容易地創(chuàng)建符合 Windows UI 風格規(guī)范的Windows 商店應用。
ObjectListView:ObjectListView 使用 C# 封裝了 .NET 的 ListView 控件。它使得 ListView 更加易用,并且加入了一些新特性。
DockPanelSuite:靈感來自 Visual Studio 的停靠窗口(docking)類庫,用于 .NET WinForm 應用。
AvalonEdit:在 SharpDevelop 中使用,基于 WPF 的文本編輯器組件。
XWT:跨平臺 UI 工具箱,用于創(chuàng)建 .NET 和 Mono 桌面應用程序。
Gtk#:Gtk# 是 Gtk+ GUI 工具箱的 Mono/.NET 版本,絕大多數(shù) Mono 中的 GUI 應用都基于它構(gòu)建。
MaterialDesignInXamlToolkit:用于創(chuàng)建 Material Design 風格 WPF 應用的工具箱。
Eto.Forms:跨平臺的 GUI 框架,用于 .NET 和 Mono 下的桌面和移動應用程序。
Dragablz:可拖拽、可分離(tearable,譯者注:即拖拽標簽頁成為獨立窗口)的 WPF 標簽頁控件(類似 Chrome)。支持布局和主題,包含兼容 MahApps 和 Material Design 的主題。
Fluent.Ribbon:Fluent Ribbon Control Suite 是一個在 WPF 中實現(xiàn) Office 和 Windows 8 風格的 Ribbon 庫。
HTML 和 CSS(HTML and CSS)
AngleSharp:支持構(gòu)建完整的 HTML5 DOM 和 CSS3 模型。
CsQuery:jQuery 風格的HTML5 解析器,可與 DOM 交互。
dotless:ruby Less CSS 庫的 .NET 移植版本。http://www.dotlesscss.org
ExCSS:C# 的 CSS3 解析器開發(fā)庫。
FluentBootstrap:讓ASP.NET MVC 和 WebPages 更容易使用 Boostrap CSS 框架。
HtmlAgilityPack:一個靈活的 HTML 解析器,可以對 DOM 進行讀寫,支持 XPATH 和 XSLT。
HTTP
Http.fs:[F#]中的一個函數(shù)式 HTTP 客戶端。
RestSharp:.NET 下簡單的 REST 和 HTTP API 協(xié)議客戶端。
EasyHttp:C# Http開發(fā)庫。
Refit:Xamarin 和 .NET 下自動生成強類型的 REST 庫。
RestEase:類型安全且易于使用的 REST API 客戶端庫,簡單可定制。大部分靈感來自 Refit。
IDE
SharpDevelop:用于 .NET 編程語言的免費 IDE。
MonoDevelop:MonoDevelop 是一個跨平臺的 IDE,主要面向 Mono/.NET 開發(fā)者。
Visual Studio Express:用于 .NET 開發(fā)的免費、輕量版本的 Visual Studio。
Visual Studio Community:功能完整的免費 IDE。
Waf DotNetPad:簡單快速的代碼編輯器,讓開發(fā) C# 或 Visual Basic 充滿樂趣。
Visual Studio Code:非常棒的編輯器,來自微軟,基于 GitHub Atom。
圖像處理(Image Processing)
ImageResizer:在圖片 URL 后面增加命令,在幾毫秒內(nèi)獲取修改后的版本,支持實時的對圖片進行縮放、編輯。
ImageProcessor:開源 .NET 庫,用于實時處理圖片。
DynamicImage:高性能開源圖片處理庫,用于 ASP.NET。
MetadataExtractor:從圖片中提取 Exif、IPTC、XMP、ICC 等其它元數(shù)據(jù)信息。
Emgu CV:OpenCV 的 .NET 跨平臺封裝。
安裝工具(Install Tools)
Wix Toolset:強大的工具集,用于創(chuàng)建你自己的 Windows 安裝程序。
Squirrel:Squirrel 即是一套工具也是一個類庫,可以無安全管理 Windows 桌面程序的安裝和更新。
國際化(Internationalization)
i18n:ASP.NET MVC 智能國際化工具。
互操作(Interoperability)
CefSharp:Chromium Embedded Framework 的 .NET 支持(WPF 和 WinForm)。
CppSharp:在 C# 中平滑使用 C++ API 的工具。
Sharpen:Sharpen 是 db4o 編寫的 Eclipse 插件,可以讓你把 Java 項目轉(zhuǎn)換為 C#。
CXXI:C++ 互操作框架。
IoC
Castle Windsor:Castle Windsor 是一個用于 .NET 和 Silverlight 的成熟的 控制反轉(zhuǎn)(IoC) 容器。
Unity:輕量級、可擴展的依賴注入容器,支持構(gòu)造函數(shù)、屬性和方法調(diào)用注入。
Autofac:令人著迷的 .NET IoC 容器。
Ninject:.net 依賴注入的忍者。
StructureMap:.Net 最早的 IoC/ID 容器。
Spring.Net:Spring.NET 是一個開源應用程序框架,可以便捷地創(chuàng)建企業(yè)級 .NET 應用。
LightInject:一個超輕量級 IoC 容器。
TinyIoC:單文件、簡單、跨平臺的 IoC 容器。
日志(Logging)
Essential Diagnostics:為內(nèi)置System.Diagnostics 命名空間擴展功能,提供更靈活的日志功能。
NLog:先進的 .NET 和 Silverlight 日志工具。
ELMAH:ELMAH 官方網(wǎng)站。
Elmah MVC:MVC 版 Elmah。
Logary:Logary 是一個 mono 和 .Net 平臺下高性能、多目標的日志、度量、追蹤和健康檢查庫。支持多目標,為微服務構(gòu)建。
Log4Net:Apache log4net 工具庫能夠幫助程序員向多種不同的目標輸出日志語句。
Serilog:一個 NoSQL 時代下簡單直接的日志庫。將多個優(yōu)秀的傳統(tǒng)結(jié)構(gòu)化分析日志功能合并到一個易于使用的程序集中。
StackExchange.Exceptional:Stack Exchange 網(wǎng)絡使用的錯誤處理程序。
Semantic Logging Application Block (SLAB):為內(nèi)置 System.Diagnostics.Tracing 命名空間(EventSource類)擴展功能,支持將日志記錄到多個容器中,包括 Azure 表存儲、數(shù)據(jù)庫、文件(JSON、XML、文本文件)。通過 ETW 支持進程內(nèi)和進程外的日志記錄,支持 Rx 進行實時的事件過濾和聚合。
機器學習和數(shù)據(jù)科學(Machine Learning and Data Science)
Accord.NET:機器學習框架,包含了音頻和圖像處理的庫(計算機視覺、計算機聽覺、信號處理和統(tǒng)計)。
Accord.NET Extensions:高級圖像處理和計算機視覺算法擴展。
AForge.NET:為計算機視覺和人工智能領(lǐng)域的開發(fā)者和研究人員提供的框架(包括圖像處理、神經(jīng)網(wǎng)絡、遺傳算法、機器學習、機器人科學)。
Deedle:處理探索性數(shù)據(jù)的數(shù)據(jù)幀和時序庫,支持 C# 和 F#。
FsLab:數(shù)據(jù)科學和機器學習庫的集合,支持 F# 和 .NET。
numl:包含最流行的監(jiān)督學習和無監(jiān)督學習算法,盡量減少創(chuàng)建預測模型時的沖突。
R Provider:將 R 語言包和函數(shù)封裝為類型安全的類型提供程序供 F# 調(diào)用。
F# Data:F# 類型提供程序,訪問 XML、JSON、CSV 和 HTML 文件(基于樣例文檔),以及 WorldBank 數(shù)據(jù)。
Markdown 處理(Markdown Processors)
MarkdownSharp:C# 實現(xiàn)的開源 Markdown 處理器,在 Stack Overflow 中使用。
F# Formatting:用于生成 F# 和 C# 項目文檔的工具。該工具庫的核心組件中包含了可擴展的 Markdown 解析器。
CommonMark.NET:CommonMark 規(guī)范的 C# 實現(xiàn),用于將 Markdown 文檔轉(zhuǎn)換為 HTML。為最佳性能和可移植性進行了優(yōu)化。
郵件(Mail)
FluentEmail:System.Net.Mail 的一個流式(Fluent)封裝,支持 razor 模板引擎。
MailKit:完整的跨平臺的郵件協(xié)議棧,包括 IMAP、POP3、SMTP,支持驗證等特性。基于 MimeKit 構(gòu)建。
MimeKit:跨平臺 .NET MIME 創(chuàng)建和解析庫,支持 S/MIME、PGP、TNEF 和 Unix mbox spools。
PreMailer.Net:一個 C# 開發(fā)庫,將你的樣式表嵌入到內(nèi)置的 style 屬性中,最大限度支持郵件客戶端。
數(shù)學(Mathematics)
MathNet:Math.NET 是一個開源項目,旨在創(chuàng)建和維護涵蓋基礎數(shù)學在內(nèi)的工具集,面向高級和日常需要使用此類功能的 .Net 開發(fā)人員。
多媒體(Media)
TagLib#:TagLib#(即 taglib-sharp)是一個讀寫媒體文件元數(shù)據(jù)的庫,支持視頻、音頻和照片格式。
度量(Metrics)
C# StatsD Client:Etsy StatsD 服務器的 C# 客戶端
微框架(Micro Framework)
.NET Micro Framework Interpreter:Microsoft? .NET Micro Framework(NETMF)是一個在 Visual Studio 中提供為小型設備上編寫嵌入式應用的框架。
雜項(Misc)
.NET Fiddle:在瀏覽器中編寫、編譯并運行 C# 代碼。相當于 C# 版本的 JSFiddle。
AzureCrawler:從 Angular、Ember、Durandal 或任何 JavaScript 應用中獲取 HTML 快照。
BitSharp:C# 比特幣節(jié)點。
CSScript:CS-Script 是一個基于 CLR 的腳本系統(tǒng),使用 C# 作為編程語言。CS-Script 目前針對微軟的 CLR 實現(xiàn)(.NET 2.0/3.0/3.5/4.0/4.5)并完整支持 Mono。附帶很多附加特性,比如腳本宿主。
CsvHelper:幫助讀寫 CSV 文件的開發(fā)庫。http://csvhelper.com
FluentValidation:一個小型的 .NET 校驗庫,使用流式接口和 lambda 表達式構(gòu)建校驗規(guī)則。
Humanizer:Humanizer 能夠在 .NET 平臺上滿足所有針對字符串、枚舉、日期、時間、時間范圍、數(shù)字等類型數(shù)據(jù)的操作和顯示要求。
LINQPad:一個 C#/VB/F# 的便簽本,能夠立即執(zhí)行任何表達式、語句塊或程序,帶有富文本顯示等有用的特性。同樣可以讓你使用 LINQ 進行交互性數(shù)據(jù)庫查詢。 [$](譯者注:也有免費許可,但是功能受限)
Polly:快捷便利的異常處理策略,例如 重試、始終重試、等待并重試或斷路(Circuit Break)等行為。 (.NET 3.5、4.0、4.5、PCL、Xamarin)
Rant:Rant 程序文本生成 DSL(領(lǐng)域特定語言)。http://berkin.me/rant
ScriptCS:使用文本編輯器、nuget 和強大的 Roslyn 來編寫 C# 應用!
MVVM
Caliburn.Micro:小型但功能強大的框架,可以用來給所有 XAML 平臺創(chuàng)建應用。它對 MV* 模式的強大支持可以讓你快速構(gòu)建你的解決方案,與此同時不必犧牲代碼質(zhì)量和可測試能力。
MVVM Light Toolkit:該工具箱主要是用來加速創(chuàng)建和開發(fā) MVVM 應用,適用于 WPF、Silverlight、Windows Store(RT)和 Windows Phone 平臺。
Catel:Catel 是一個應用開發(fā)平臺,主要著眼在 MVVM(WPF、Silverlight、Windows Phone 及 WinRT)以及 MVC(ASP.NET MVC)。Catel 的核心部分包含 IoC 容器、模型、校驗、備忘錄模式(memento)、消息中介(message mediator)、參數(shù)檢查等。
UpdateControls:Update Controls 不需要你實現(xiàn) INotifyPropertyChanged 接口或聲明一個 DependencyProperty。可以將控件直接關(guān)聯(lián)到 CLR 屬性,這使得它完美貼合 MVVM 模式。
ReactiveUI:一個 .NET 下的 MVVM 框架,集成了反應性擴展框架(Rx),允許開發(fā)者使用 WPF、Windows Store Apps、WP8 或 Xamarin 創(chuàng)建優(yōu)雅的、可測試的應用。
Okra App Framework:一個以 app 為中心的 Windows 8.1 MVVM 框架,融合依賴注入,包含一套完整的 Visual Studio MVVM 模板。
WPF Application Framework (WAF):一個輕量級的框架,能夠幫助你創(chuàng)建結(jié)構(gòu)優(yōu)雅的 WPF 應用。支持你使用分層架構(gòu)和 MVVM 模式。
MVVMCross:跨平臺mvvm 移動開發(fā)框架,針對 WP7 和 WP8 的 WPF/Silverlight、Android 的 Mono、iOS 的 MonoTouch 以及 WPA8.1/Windows 8.1 商店應用的 Windows Universal 項目。它使用可移植類庫(PCL)來支持可維護的跨平臺 C# 原生應用。
Stylet:最小化 MVVM?框架(參考 Caliburn Micro),包含了良好的文檔、高覆蓋率的測試以及自帶的 IoC 容器。
Gemini:類似 Visual Studio Shell 的 IDE 框架。基于 WPF、AvalonDock 和 Caliburn Micro 構(gòu)建。
Office
ClosedXML:ClosedXML 能夠讓開發(fā)人員更便捷地創(chuàng)建 Excel 2007、2010 文件。
NPOI:該項目是 .NET 版本的 POI 項目,原始的 Java 版本位于http://poi.apache.org/。
EPPlus:EPPlus 是一個 .net 類庫,用于讀寫 Open Office Xml 格式的 Excel 2007、2010 文件(xlsx)。
Open XML SDK:Open XML SDK 是一個開源庫,用于處理 Open XML 文檔(包括 DOCX、XLSX 和 PPTX)。
ORM
Entity Framework:對象關(guān)系映射器(ORM)框架,讓 .NET 開發(fā)人員使用領(lǐng)域特定的對象來處理關(guān)系型數(shù)據(jù)。
BL Toolkit:.NET 平臺的業(yè)務邏輯工具箱。
Dapper:一個超小型、快捷輕便的 ORM 框架。
Dapper Extensions:小型類庫,對 Dapper 的功能進行補充,為你的簡單傳統(tǒng) CLR 對象提供基礎的 CRUD(Get、Insert、Update、Delete) 操作。
NHibernate:NHibernate 對象關(guān)系映射器(移植自 Java 平臺的 Hibernate)。
Fluent NHibernate:便捷、無需使用 XML、編譯安全、自動化、基于約定命名的 NHibernate 映射庫。
FluentMigrator:.net 下的便捷的遷移框架。
ServiceStack.OrmLite:輕量、簡單、快速、基于命名約定的 POCO ORM。
Massive:小型、令人愉悅的數(shù)據(jù)訪問工具,始終關(guān)愛你直到永遠。
LINQ to DB:最快的 LINQ 數(shù)據(jù)庫訪問庫,簡單、輕量、快速、類型安全,在你的對象(POCO)和數(shù)據(jù)庫之間搭建橋梁。
包管理(Package Management)
NuGet:.NET 包管理器。
MyGet:為 NuGet、NPM、Bower 和 VSIX 提供程序包倉庫宿主,同樣提供 CI 服務。[開源軟件免費][$]
Paket:.NET 的一個包依賴管理器,支持 NuGet 包和 GitHub 倉庫。http://fsprojects.github.io/Paket/
ITextSharp:iText 是一個PDF庫,用于創(chuàng)建、修改、檢查和維護 Portable Document Format(PDF)格式的文檔[$]**[開源軟件免費]**
Profiler
MiniProfiler:一個簡單但有效的小型 profiler,用于 ASP.NET 網(wǎng)站。
Glimpse:開源 web 診斷平臺。
推送通知(Push Notifications)
PushSharp:服務器端的推送通知類庫,支持 iOS、OSX、Android、Chrome、Windows Phone、Windows 8、Backberry 和 Amazon 設備。
隊列(Queue)
NServiceBus:.NET 平臺下最流行的服務總線。
Hangfire:在 ASP.NET 應用中,超簡單地實現(xiàn)自主引導(fire-and-forget)、延遲和周期重復任務。
RabbitMQ.NET:AMQP 客戶端的 C# 實現(xiàn),通過 WCF 綁定到已有的 AMQP 服務。
NetMQ:NetMQ 是 ZeroMQ 純 C# 移植版本。
MassTransit:MassTransit 是一個精簡服務總線(lean service bus)的實現(xiàn),使用 .NET Framework 來構(gòu)建松耦合應用程序。
Rebus:Rebus 是一個 .NET 平臺的精簡服務總線和 NServiceBus、MassTransit類似,只不過更加精簡。
EasyNetQ:易于使用的 RabbitMQ .NET API。
Warewolf ESB:易于使用的服務總線和微服務平臺,可以在一個可視化 IDE 中便捷的創(chuàng)建應用和服務。
響應式編程(Reactive Programming)
Rx.NET:Reactive Extensions (Rx)庫使用觀察者序列(observable sequences)和 LINQ 風格的查詢操作,來進行異步和基于事件的程序開發(fā)、
Dynamic Data:用于集合的響應式編程框架。
計劃調(diào)度(Scheduling)
QuartzNet:Quartz 是 .NET 平臺的企業(yè)級調(diào)度器。
SDK 和 API 客戶端(SDK and API Clients)
AWS SDK:AWS SDK for .NET 讓 .NET 開發(fā)者可以便捷地操作 Amazon Web Services。
Azure PowerShell:一組 PowerShell 命令行,讓開發(fā)者和管理員開發(fā)、部署和管理 Microsoft Azure 應用。
Octokit.NET:.NET 平臺下的 GitHub API 客戶端庫。
DropNet:Dropbox API 客戶端開發(fā)庫。
搜索(Search)
Elasticsearch .NET:Elasticsearch.Net & NEST。
PlainElastic.Net:ElasticSearch 的一個簡單的 .Net 客戶端。
SolrNet:.Net 平臺下的 Solr 客戶端。
Lucene.net:Lucene.Net 是 Lucene 搜索引擎庫的移植,使用 C# 編寫,面向 .NET 環(huán)境的用戶。
序列化(Serialization)
Protobuf.NET:Protocol buffers 是 Google 使用的二進制序列化格式,在 Google 數(shù)據(jù)通訊中大量使用。
Json.NET:.NET 平臺下流行的、高性能 JSON 框架。
ServiceStack.Text:在 servicestack.net 中使用的 JSON、JSV、CSV 文本序列化器。
Msgpack-Cli:MessagePack 的 CLI 實現(xiàn)。
Jil:.NET 平臺下快速的 JSON 序列化器,基于 Sigil (在 StackOverflow 中使用)。
ProtoBuf:根據(jù) .proto 規(guī)范,為 protocol buffer 序列化內(nèi)容生成 C# 代碼。
F# Data:F# 類型提供程序,訪問 XML、JSON、CSV 和 HTML 文件(基于樣例文檔),以及訪問 WorldBank 數(shù)據(jù)。
Bond:跨平臺框架,用于處理系統(tǒng)化(schematized)數(shù)據(jù)。支持跨平臺的序列化、反序列化,以及強大的通用機制來高效處理數(shù)據(jù)。
狀態(tài)機(State machines)
Stateless:直接使用 .NET 代碼創(chuàng)建一個狀態(tài)機和輕量的基于狀態(tài)機的工作流。
Automatonymous:.Net 平臺的狀態(tài)機庫,允許你編寫流式API風格的狀態(tài)機。
靜態(tài)網(wǎng)站生成(Static Site Generators)
Pretzel:.NET 平臺下的網(wǎng)站生成工具(包含后續(xù)的一些功能)。
Sandra.Snow:.NET 平臺的靜態(tài)網(wǎng)站生成工具,借鑒 Jekyll。
Wyam:簡單易用、高度模塊化、擁有強大配置能力的靜態(tài)網(wǎng)站生成工具。
風格指南(Style Guide)
C# Style Guide:StackOverflow 上的C#風格指南 Q & A。
C# Coding Conventions:MSDN 官方的 C# 代碼約定。
模板引擎(Template Engine)
RazorEngine:基于微軟 Razor 解析器引擎的開源模板引擎。
Nustache:無邏輯模板的開源庫。
DotLiquid:Ruby Liquid 模板語言的 C# 移植版本。
測試(Testing)
AutoFixture:AutoFixture 是一個用于 .NET 的開源框架,用于簡化單元測試中的設置(Arrange)階段。
FakeItEasy:.NET 平臺的一個簡單的 mocking 庫。http://fakeiteasy.github.io
Fluent Assertions:一組 .NET 擴展方法,可以讓你更自然地指定 TDD 或 BDD 風格測試的期望值。
Fuchu:F# 的單元測試庫,通過 tests-as-values 機制讓你更容易創(chuàng)建領(lǐng)域特定語言(DSL)。
Machine.Specifications:Machine.Specifications (MSpec)是一個上下文、規(guī)范框架,忽略了語言本身的干擾,簡化了測試。
Moq:.NET 平臺下最流行和友好的 mocking 框架。
NBuilder:快速創(chuàng)建測試對象。
NSubstitute:一個友好的 .NET mocking 框架。
Rhino Mocks:.NET 平臺的動態(tài) Mocking 框架
Shouldly:Shouldly 是一個斷言(assertion)框架,主要功能是在斷言失敗時,給出簡單明了并且友好的錯誤信息。
SpecFlow:將業(yè)務需求綁定到 .Net 代碼。
xUnit:xUnit.net 是一個 .NET 平臺下免費、開源、專注社區(qū)的單元測試框架。
交易(Trading)
Lean:Lean 引擎是一個開源的,完全由 C# 托管代碼編寫的交易算法引擎,用于桌面和云端。https://lean.quantconnect.com
StockSharp:交易和算法交易(algorithmic trading)的開源平臺(用于股票市場、外匯市場、比特幣和期權(quán)交易) 。http://stocksharp.com
Visual Studio 插件(Visual Studio Plugins)
Web Essentials:Web Essentials 為 Visual Stduio 擴展了大量的特性,提供了 web 開發(fā)人員盼望多年的功能。
VsVIM:Visual Studio 中的 VIM。
Nuget Package Manager:NuGet 是微軟開發(fā)平臺(包括 .NET)的包管理器。
SideWaffle:Visual Studio 2012、2013 中的一組項目模板集合,讓 web 開發(fā)人員更加輕松。
Resharper:Visual Studio 開發(fā)人員生產(chǎn)力工具[$]
Refactoring Essentials:開源 C# 和 VB.NET 重構(gòu)擴展,包括代碼最佳實踐分析器。
CodeContracts:.NET CodeContracts 工具源代碼。
Git Diff Margin:在 Visual Studio 滾動條區(qū)域?qū)崟r顯示當前文件在 Git 上的差異。
Productivity Power Tools:一組 Visual Studio 專業(yè)版(及更高版本)的擴展,用于提高開發(fā)人員的生產(chǎn)力。
Web 框架(Web Frameworks)
ASP.NET MVC:ASP.NET 是一個免費的 web 框架,用于創(chuàng)建優(yōu)秀的 web 站點和應用程序。
FubuMVC:.NET 平臺下前端控制器(front-controller)風格的 MVC 框架。http://fubuworld.com/fubumvc
NancyFx:在 .Net 和 Mono 平臺上創(chuàng)建 HTTP 服務的一個輕量級、非正式的框架。
IISNode:在 IIS 中宿主 NodeJS 應用程序。
Suave.IO:一個框架/庫/web 服務器,當你看到你使用優(yōu)美的 F# 編寫的代碼提前完成了你的項目時,它的存在會讓你喜極而泣。(一個用 F# 編寫 Web 應用的框架和服務器端)
Web 服務器(Web Servers)
EmbedIO:基于 Mono 編寫的跨平臺的 Web 服務器。
XSP:Mono 中的 ASP.NET 宿主服務器。該模塊包含了 Apache 模塊、FastCGI 模塊,可以用于掛載到其它 web 服務器或是作為一個測試用的獨立服務器存在(類似微軟的 Cassini 項目)。
WebSocket
SignalR:ASP.NET 庫,開發(fā)者可以通過它在 web 應用程序中非常簡單地實現(xiàn)實時功能。
Fleck:Fleck 是一個 C# 實現(xiàn)的 WebSocket 服務器。分支自 Nugget 項目。
Websocket-Sharp:WebSocket 協(xié)議的 C# 實現(xiàn),包含客戶端和服務器端。
XSockets:提供了一組工具,可以在微軟 .NET 等平臺上構(gòu)建一個實時應用程序。
WebSocket4NET:.NET 2.0+、Xamarin、Mono、Silverlight、Windows Phone 以及 WinRT 下的 WebSocket 客戶端。
Windows 服務(Windows Services)
TopShelf:一個簡單的服務宿主框架,使用 .NET 構(gòu)建 Windows 服務。
其他列表(Other Lists)
.NET-libraries-that-make-your-life-easier:開源的 .NET 庫,讓你的生活更加輕松、
awesome-LINQ:一組精心挑選的超棒的 LINQ 類庫、工具等。原文地址:https://github.com/jobbole/awesome-dotnet-cn
來自我的博客:http://www.cnblogs.com/hgmyz/p/5375522.html