|
來源:伯樂在線 GitHub 主頁 鏈接:https://github.com/jobbole/awesome-dotnet-cn 微信圖文中不支持超鏈接,點(diǎn)擊「閱讀原文」,可訪問我們的 GitHub 主頁
HTML 和 CSS(HTML and CSS)
AngleSharp:支持構(gòu)建完整的 HTML5 DOM 和 CSS3 模型。
CsQuery:jQuery 風(fēng)格的HTML5 解析器,可與 DOM 交互。
dotless:ruby Less CSS 庫的 .NET 移植版本。http://www.
ExCSS:C# 的 CSS3 解析器開發(fā)庫。
FluentBootstrap:讓ASP.NET MVC 和 WebPages 更容易使用 Boostrap CSS 框架。
HtmlAgilityPack:一個(gè)靈活的 HTML 解析器,可以對 DOM 進(jìn)行讀寫,支持 XPATH 和 XSLT。
HTTP
Http.fs:[F#] 中的一個(gè)函數(shù)式 HTTP 客戶端。
RestSharp:.NET 下簡單的 REST 和 HTTP API 協(xié)議客戶端。
EasyHttp:C# Http開發(fā)庫。
Refit :Xamarin 和 .NET 下自動(dòng)生成強(qiáng)類型的 REST 庫。
RestEase:類型安全且易于使用的 REST API 客戶端庫,簡單可定制。大部分靈感來自 Refit。
IDE
SharpDevelop:用于 .NET 編程語言的免費(fèi) IDE。
MonoDevelop:MonoDevelop 是一個(gè)跨平臺的 IDE,主要面向 Mono/.NET 開發(fā)者。
Visual Studio Express:用于 .NET 開發(fā)的免費(fèi)、輕量版本的 Visual Studio。
Visual Studio Community:功能完整的免費(fèi) IDE。
Waf DotNetPad :簡單快速的代碼編輯器,讓開發(fā) C# 或 Visual Basic 充滿樂趣。
Visual Studio Code:非常棒的編輯器,來自微軟,基于 GitHub Atom。
圖像處理(Image Processing)
ImageResizer:在圖片 URL 后面增加命令,在幾毫秒內(nèi)獲取修改后的版本,支持實(shí)時(shí)的對圖片進(jìn)行縮放、編輯。
ImageProcessor:開源 .NET 庫,用于實(shí)時(shí)處理圖片。
DynamicImage:高性能開源圖片處理庫,用于 ASP.NET。
MetadataExtractor:從圖片中提取 Exif、IPTC、XMP、ICC 等其它元數(shù)據(jù)信息。
Emgu CV:OpenCV 的 .NET 跨平臺封裝。
安裝工具(Install Tools)
國際化(Internationalization)
互操作(Interoperability)
CefSharp:Chromium Embedded Framework 的 .NET 支持(WPF 和 WinForm)。
CppSharp:在 C# 中平滑使用 C++ API 的工具。
Sharpen:Sharpen 是 db4o 編寫的 Eclipse 插件,可以讓你把 Java 項(xiàng)目轉(zhuǎn)換為 C#。
CXXI:C++ 互操作框架。
IoC
Castle Windsor:Castle Windsor 是一個(gè)用于 .NET 和 Silverlight 的成熟的 控制反轉(zhuǎn)(IoC) 容器。
Unity:輕量級、可擴(kuò)展的依賴注入容器,支持構(gòu)造函數(shù)、屬性和方法調(diào)用注入。
Autofac:令人著迷的 .NET IoC 容器。
Ninject:.net 依賴注入的忍者。
StructureMap:.Net 最早的 IoC/ID 容器。
Spring.Net:Spring.NET 是一個(gè)開源應(yīng)用程序框架,可以便捷地創(chuàng)建企業(yè)級 .NET 應(yīng)用。
LightInject :一個(gè)超輕量級 IoC 容器。
TinyIoC:單文件、簡單、跨平臺的 IoC 容器。
日志(Logging)
Essential Diagnostics:為內(nèi)置System.Diagnostics 命名空間擴(kuò)展功能,提供更靈活的日志功能。
NLog:先進(jìn)的 .NET 和 Silverlight 日志工具。
ELMAH:ELMAH 官方網(wǎng)站。
Elmah MVC:MVC 版 Elmah。
Logary:Logary 是一個(gè) mono 和 .Net 平臺下高性能、多目標(biāo)的日志、度量、追蹤和健康檢查庫。支持多目標(biāo),為微服務(wù)構(gòu)建。
Log4Net:Apache log4net 工具庫能夠幫助程序員向多種不同的目標(biāo)輸出日志語句。
Serilog:一個(gè) NoSQL 時(shí)代下簡單直接的日志庫。將多個(gè)優(yōu)秀的傳統(tǒng)結(jié)構(gòu)化分析日志功能合并到一個(gè)易于使用的程序集中。
StackExchange.Exceptional:Stack Exchange 網(wǎng)絡(luò)使用的錯(cuò)誤處理程序。
Semantic Logging Application Block (SLAB):為內(nèi)置 System.Diagnostics.Tracing 命名空間(EventSource類)擴(kuò)展功能,支持將日志記錄到多個(gè)容器中,包括 Azure 表存儲、數(shù)據(jù)庫、文件(JSON、XML、文本文件)。通過 ETW 支持進(jìn)程內(nèi)和進(jìn)程外的日志記錄,支持 Rx 進(jìn)行實(shí)時(shí)的事件過濾和聚合。
機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)(Machine Learning and Data Science)
Accord.NET:機(jī)器學(xué)習(xí)框架,包含了音頻和圖像處理的庫(計(jì)算機(jī)視覺、計(jì)算機(jī)聽覺、信號處理和統(tǒng)計(jì))。
Accord.NET Extensions:高級圖像處理和計(jì)算機(jī)視覺算法擴(kuò)展。
AForge.NET:為計(jì)算機(jī)視覺和人工智能領(lǐng)域的開發(fā)者和研究人員提供的框架(包括圖像處理、神經(jīng)網(wǎng)絡(luò)、遺傳算法、機(jī)器學(xué)習(xí)、機(jī)器人科學(xué))。
Deedle:處理探索性數(shù)據(jù)的數(shù)據(jù)幀和時(shí)序庫,支持 C# 和 F#。
FsLab:數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)庫的集合,支持 F# 和 .NET。
numl :包含最流行的監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)算法,盡量減少創(chuàng)建預(yù)測模型時(shí)的沖突。
R Provider :將 R 語言包和函數(shù)封裝為類型安全的類型提供程序供 F# 調(diào)用。
F# Data:F# 類型提供程序,訪問 XML、JSON、CSV 和 HTML 文件(基于樣例文檔),以及 WorldBank 數(shù)據(jù)。
Markdown 處理(Markdown Processors)
MarkdownSharp:C# 實(shí)現(xiàn)的開源 Markdown 處理器,在 Stack Overflow 中使用。
F# Formatting:用于生成 F# 和 C# 項(xiàng)目文檔的工具。該工具庫的核心組件中包含了可擴(kuò)展的 Markdown 解析器。
CommonMark.NET:CommonMark 規(guī)范的 C# 實(shí)現(xiàn),用于將 Markdown 文檔轉(zhuǎn)換為 HTML。為最佳性能和可移植性進(jìn)行了優(yōu)化。
郵件(Mail)
FluentEmail:System.Net.Mail 的一個(gè)流式(Fluent)封裝,支持 razor 模板引擎。
MailKit:完整的跨平臺的郵件協(xié)議棧,包括 IMAP、POP3、SMTP,支持驗(yàn)證等特性?;?MimeKit 構(gòu)建。
MimeKit:跨平臺 .NET MIME 創(chuàng)建和解析庫,支持 S/MIME、PGP、TNEF 和 Unix mbox spools。
PreMailer.Net:一個(gè) C# 開發(fā)庫,將你的樣式表嵌入到內(nèi)置的 style 屬性中,最大限度支持郵件客戶端。
數(shù)學(xué)(Mathematics)
多媒體(Media)
度量(Metrics)
微框架(Micro Framework)
雜項(xiàng)(Misc)
.NET Fiddle:在瀏覽器中編寫、編譯并運(yùn)行 C# 代碼。相當(dāng)于 C# 版本的 JSFiddle。
AzureCrawler:從 Angular、Ember、Durandal 或任何 JavaScript 應(yīng)用中獲取 HTML 快照。
BitSharp:C# 比特幣節(jié)點(diǎn)。
CSScript:CS-Script 是一個(gè)基于 CLR 的腳本系統(tǒng),使用 C# 作為編程語言。CS-Script 目前針對微軟的 CLR 實(shí)現(xiàn)(.NET 2.0/3.0/3.5/4.0/4.5)并完整支持 Mono。附帶很多附加特性,比如腳本宿主。
CsvHelper:幫助讀寫 CSV 文件的開發(fā)庫。http://
FluentValidation:一個(gè)小型的 .NET 校驗(yàn)庫,使用流式接口和 lambda 表達(dá)式構(gòu)建校驗(yàn)規(guī)則。
Humanizer:Humanizer 能夠在 .NET 平臺上滿足所有針對字符串、枚舉、日期、時(shí)間、時(shí)間范圍、數(shù)字等類型數(shù)據(jù)的操作和顯示要求。
LINQPad:一個(gè) C#/VB/F# 的便簽本,能夠立即執(zhí)行任何表達(dá)式、語句塊或程序,帶有富文本顯示等有用的特性。同樣可以讓你使用 LINQ 進(jìn)行交互性數(shù)據(jù)庫查詢。 [$](譯者注:也有免費(fèi)許可,但是功能受限)
Polly:快捷便利的異常處理策略,例如 重試、始終重試、等待并重試或斷路(Circuit Break)等行為。 (.NET 3.5、4.0、4.5、PCL、Xamarin)
Rant:Rant 程序文本生成 DSL(領(lǐng)域特定語言)。 http:///rant
ScriptCS:使用文本編輯器、nuget 和強(qiáng)大的 Roslyn 來編寫 C# 應(yīng)用!
MVVM
Caliburn.Micro :小型但功能強(qiáng)大的框架,可以用來給所有 XAML 平臺創(chuàng)建應(yīng)用。它對 MV* 模式的強(qiáng)大支持可以讓你快速構(gòu)建你的解決方案,與此同時(shí)不必犧牲代碼質(zhì)量和可測試能力。
MVVM Light Toolkit:該工具箱主要是用來加速創(chuàng)建和開發(fā) MVVM 應(yīng)用,適用于 WPF、Silverlight、Windows Store(RT)和 Windows Phone 平臺。
Catel:Catel 是一個(gè)應(yīng)用開發(fā)平臺,主要著眼在 MVVM(WPF、Silverlight、Windows Phone 及 WinRT)以及 MVC(ASP.NET MVC)。Catel 的核心部分包含 IoC 容器、模型、校驗(yàn)、備忘錄模式(memento)、消息中介(message mediator)、參數(shù)檢查等。
UpdateControls:Update Controls 不需要你實(shí)現(xiàn) INotifyPropertyChanged 接口或聲明一個(gè) DependencyProperty。可以將控件直接關(guān)聯(lián)到 CLR 屬性,這使得它完美貼合 MVVM 模式。
ReactiveUI:一個(gè) .NET 下的 MVVM 框架,集成了反應(yīng)性擴(kuò)展框架(Rx),允許開發(fā)者使用 WPF、Windows Store Apps、WP8 或 Xamarin 創(chuàng)建優(yōu)雅的、可測試的應(yīng)用。
Okra App Framework:一個(gè)以 app 為中心的 Windows 8.1 MVVM 框架,融合依賴注入,包含一套完整的 Visual Studio MVVM 模板。
WPF Application Framework (WAF):一個(gè)輕量級的框架,能夠幫助你創(chuàng)建結(jié)構(gòu)優(yōu)雅的 WPF 應(yīng)用。支持你使用分層架構(gòu)和 MVVM 模式。
MVVMCross:跨平臺mvvm 移動(dòng)開發(fā)框架,針對 WP7 和 WP8 的 WPF/Silverlight、Android 的 Mono、iOS 的 MonoTouch 以及 WPA8.1/Windows 8.1 商店應(yīng)用的 Windows Universal 項(xiàng)目。它使用可移植類庫(PCL)來支持可維護(hù)的跨平臺 C# 原生應(yīng)用。
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:該項(xiàng)目是 .NET 版本的 POI 項(xiàng)目,原始的 Java 版本位于http://poi./ 。
EPPlus:EPPlus 是一個(gè) .net 類庫,用于讀寫 Open Office Xml 格式的 Excel 2007、2010 文件(xlsx)。
Open XML SDK:Open XML SDK 是一個(gè)開源庫,用于處理 Open XML 文檔(包括 DOCX、XLSX 和 PPTX)。
ORM
Entity Framework:對象關(guān)系映射器(ORM)框架,讓 .NET 開發(fā)人員使用領(lǐng)域特定的對象來處理關(guān)系型數(shù)據(jù)。
BL Toolkit:.NET 平臺的業(yè)務(wù)邏輯工具箱。
Dapper:一個(gè)超小型、快捷輕便的 ORM 框架。
Dapper Extensions:小型類庫,對 Dapper 的功能進(jìn)行補(bǔ)充,為你的簡單傳統(tǒng) CLR 對象提供基礎(chǔ)的 CRUD(Get、Insert、Update、Delete) 操作。
NHibernate:NHibernate 對象關(guān)系映射器(移植自 Java 平臺的 Hibernate)。
Fluent NHibernate:便捷、無需使用 XML、編譯安全、自動(dòng)化、基于約定命名的 NHibernate 映射庫。
FluentMigrator:.net 下的便捷的遷移框架。
ServiceStack.OrmLite:輕量、簡單、快速、基于命名約定的 POCO ORM。
Massive:小型、令人愉悅的數(shù)據(jù)訪問工具,始終關(guān)愛你直到永遠(yuǎn)。
LINQ to DB:最快的 LINQ 數(shù)據(jù)庫訪問庫,簡單、輕量、快速、類型安全,在你的對象(POCO)和數(shù)據(jù)庫之間搭建橋梁。
包管理(Package Management)
PDF
Profiler
推送通知(Push Notifications)
隊(duì)列(Queue)
NServiceBus:.NET 平臺下最流行的服務(wù)總線。
Hangfire:在 ASP.NET 應(yīng)用中,超簡單地實(shí)現(xiàn)自主引導(dǎo)(fire-and-forget)、延遲和周期重復(fù)任務(wù)。
RabbitMQ.NET:AMQP 客戶端的 C# 實(shí)現(xiàn),通過 WCF 綁定到已有的 AMQP 服務(wù)。
NetMQ:NetMQ 是 ZeroMQ 純 C# 移植版本。
MassTransit:MassTransit 是一個(gè)精簡服務(wù)總線(lean service bus)的實(shí)現(xiàn),使用 .NET Framework 來構(gòu)建松耦合應(yīng)用程序。
Rebus:Rebus 是一個(gè) .NET 平臺的精簡服務(wù)總線和 NServiceBus、MassTransit類似,只不過更加精簡。
EasyNetQ:易于使用的 RabbitMQ .NET API。
Warewolf ESB:易于使用的服務(wù)總線和微服務(wù)平臺,可以在一個(gè)可視化 IDE 中便捷的創(chuàng)建應(yīng)用和服務(wù)。
響應(yīng)式編程(Reactive Programming)
計(jì)劃調(diào)度(Scheduling)
SDK 和 API 客戶端(SDK and API Clients)
AWS SDK:AWS SDK for .NET 讓 .NET 開發(fā)者可以便捷地操作 Amazon Web Services。
Azure PowerShell:一組 PowerShell 命令行,讓開發(fā)者和管理員開發(fā)、部署和管理 Microsoft Azure 應(yīng)用。
Octokit.NET:.NET 平臺下的 GitHub API 客戶端庫。
DropNet:Dropbox API 客戶端開發(fā)庫。
搜索(Search)
Elasticsearch .NET:Elasticsearch.Net & NEST。
PlainElastic.Net:ElasticSearch 的一個(gè)簡單的 .Net 客戶端。
SolrNet:.Net 平臺下的 Solr 客戶端。
Lucene.net:Lucene.Net 是 Lucene 搜索引擎庫的移植,使用 C# 編寫,面向 .NET 環(huán)境的用戶。
序列化(Serialization)
Protobuf.NET:Protocol buffers 是 Google 使用的二進(jìn)制序列化格式,在 Google 數(shù)據(jù)通訊中大量使用。
Json.NET:.NET 平臺下流行的、高性能 JSON 框架。
ServiceStack.Text:在 servicestack.net 中使用的 JSON、JSV、CSV 文本序列化器。
Msgpack-Cli:MessagePack 的 CLI 實(shí)現(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ù)。支持跨平臺的序列化、反序列化,以及強(qiáng)大的通用機(jī)制來高效處理數(shù)據(jù)。
狀態(tài)機(jī)(State machines)
靜態(tài)網(wǎng)站生成(Static Site Generators)
Pretzel:.NET 平臺下的網(wǎng)站生成工具(包含后續(xù)的一些功能)。
Sandra.Snow:.NET 平臺的靜態(tài)網(wǎng)站生成工具,借鑒 Jekyll。
Wyam:簡單易用、高度模塊化、擁有強(qiáng)大配置能力的靜態(tài)網(wǎng)站生成工具。
風(fēng)格指南(Style Guide)
模板引擎(Template Engine)
測試(Testing)
AutoFixture:AutoFixture 是一個(gè)用于 .NET 的開源框架,用于簡化單元測試中的設(shè)置(Arrange)階段。
FakeItEasy:.NET 平臺的一個(gè)簡單的 mocking 庫。http://fakeiteasy.
Fluent Assertions:一組 .NET 擴(kuò)展方法,可以讓你更自然地指定 TDD 或 BDD 風(fēng)格測試的期望值。
Fuchu:F# 的單元測試庫,通過 tests-as-values 機(jī)制讓你更容易創(chuàng)建領(lǐng)域特定語言(DSL)。
Machine.Specifications:Machine.Specifications (MSpec)是一個(gè)上下文、規(guī)范框架,忽略了語言本身的干擾,簡化了測試。
Moq:.NET 平臺下最流行和友好的 mocking 框架。
NBuilder:快速創(chuàng)建測試對象。
NSubstitute:一個(gè)友好的 .NET mocking 框架。
NUnit
Rhino Mocks:.NET 平臺的動(dòng)態(tài) Mocking 框架
Shouldly:Shouldly 是一個(gè)斷言(assertion)框架,主要功能是在斷言失敗時(shí),給出簡單明了并且友好的錯(cuò)誤信息。
SpecFlow:將業(yè)務(wù)需求綁定到 .Net 代碼。
xUnit:xUnit.net 是一個(gè) .NET 平臺下免費(fèi)、開源、專注社區(qū)的單元測試框架。
交易(Trading)
Visual Studio 插件(Visual Studio Plugins)
Web Essentials:Web Essentials 為 Visual Stduio 擴(kuò)展了大量的特性,提供了 web 開發(fā)人員盼望多年的功能。
VsVIM:Visual Studio 中的 VIM。
Nuget Package Manager:NuGet 是微軟開發(fā)平臺(包括 .NET)的包管理器。
SideWaffle:Visual Studio 2012、2013 中的一組項(xiàng)目模板集合,讓 web 開發(fā)人員更加輕松。
Resharper:Visual Studio 開發(fā)人員生產(chǎn)力工具 [$]
Refactoring Essentials:開源 C# 和 VB.NET 重構(gòu)擴(kuò)展,包括代碼最佳實(shí)踐分析器。
CodeContracts:.NET CodeContracts 工具源代碼。
Git Diff Margin:在 Visual Studio 滾動(dòng)條區(qū)域?qū)崟r(shí)顯示當(dāng)前文件在 Git 上的差異。
Productivity Power Tools:一組 Visual Studio 專業(yè)版(及更高版本)的擴(kuò)展,用于提高開發(fā)人員的生產(chǎn)力。
Web 框架(Web Frameworks)
ASP.NET MVC:ASP.NET 是一個(gè)免費(fèi)的 web 框架,用于創(chuàng)建優(yōu)秀的 web 站點(diǎn)和應(yīng)用程序。
FubuMVC:.NET 平臺下前端控制器(front-controller)風(fēng)格的 MVC 框架。http:///fubumvc
NancyFx:在 .Net 和 Mono 平臺上創(chuàng)建 HTTP 服務(wù)的一個(gè)輕量級、非正式的框架。
IISNode:在 IIS 中宿主 NodeJS 應(yīng)用程序。
Suave.IO:一個(gè)框架/庫/web 服務(wù)器,當(dāng)你看到你使用優(yōu)美的 F# 編寫的代碼提前完成了你的項(xiàng)目時(shí),它的存在會(huì)讓你喜極而泣。(一個(gè)用 F# 編寫 Web 應(yīng)用的框架和服務(wù)器端)
Web 服務(wù)器(Web Servers)
WebSocket
SignalR:ASP.NET 庫,開發(fā)者可以通過它在 web 應(yīng)用程序中非常簡單地實(shí)現(xiàn)實(shí)時(shí)功能。
Fleck:Fleck 是一個(gè) C# 實(shí)現(xiàn)的 WebSocket 服務(wù)器。分支自 Nugget 項(xiàng)目。
Websocket-Sharp:WebSocket 協(xié)議的 C# 實(shí)現(xiàn),包含客戶端和服務(wù)器端。
XSockets:提供了一組工具,可以在微軟 .NET 等平臺上構(gòu)建一個(gè)實(shí)時(shí)應(yīng)用程序。
WebSocket4NET:.NET 2.0+、Xamarin、Mono、Silverlight、Windows Phone 以及 WinRT 下的 WebSocket 客戶端。
Windows 服務(wù)(Windows Services)
其他列表(Other Lists)
譯者簡介
Erucy:曾經(jīng)的 SharePoint 喵星程序猿(暫時(shí)還掛著微軟MVP的名頭),現(xiàn)在的Azure/.Net/MongoDB/Cordova/前端程序猿,偶爾寫小說 打賞支持譯者翻出更多好文章,謝謝!
|