.NET平臺下開源框架

汪磊發表於2013-08-10

一、AOP框架
Encase 是C#編寫開發的為.NET平臺提供的AOP框架。Encase 獨特的提供了把方面(aspects)部署到執行時程式碼,而其它AOP框架依賴配置檔案的方式。這種部署方面(aspects)的方法幫助缺少經驗的開發人員提高開發效率。

NKalore是一款程式語言,它擴充套件了C#允許在.net平臺使用AOP。NKalore的語法簡單、直觀,它的編譯器是基於Mono C#編譯器(MCS)。NKalore目前只能在命令列或#Develop內部使用。NKalore相容公共語言規範CLS(Common Language Specification),它可以在任何.NET開發環境中使用,包括微軟的Visual Studio .NET。

PostSharp讀取.NET位元組模組,轉換成物件模型。讓外掛分析和轉換這個模型並寫回到MSIL。PostSharp使開發程式分析應用程式容易得像分析程式碼規則和設計模式,它使程式開發的思想變革為面向方面軟體開發(AOSD/AOD)思想。

AspectDNG的目標是為.NET開發人員提供簡單而功能強大的AOP-GAOP實現。它效仿java下的開源工具AspectJ 和 Spoon,成熟程度也很接近它們。

RAIL(Runtime Assembly Instrumentation Library) 開源專案可以在C#程式集載入和執行前進行處理控制調整和重新構建。C#在CLR中,我們已經能夠動態載入程式集並且獲得程式集中的類和方 法,RAIL(Runtime Assembly Instrumentation Library)的出現填補了CLR處理過程中的一些空白。

SetPoint是一款.NET框架下的全功能(full-featured)AOP引擎.它著重為稱為語義切點(semantic pointcuts)的定義依賴RDF/OWL的使用.它的功能為一個IL-level,highly dynamic weaver&LENDL,一個引人注目的定義語言、、、、、、

DotNetAOP為 CLR language提供AOP 框架基礎屬性。

NAop是一個DotNet下的AOP框架。

AspectSharp是DotNet下的免費AOP框架,它以Dynamic Proxies和XML作為配置檔案。

二、Ajax框架

Ajax.NET Professional (AjaxPro)是最先把AJAX技術在微軟.NET環境下的實現的AJAX框架之一。它在客戶端指令碼之上建立代理類來呼叫伺服器端的方法。

MagicAjax.NET是一款在ASP.NET下建立Web頁面提供AJAX技術的框架。它使開發人員很容易把AJAX整合到他們的頁面而不需要替換ASP.NET控制元件或自己寫javascript指令碼程式碼。

Anthem.NET是為ASP.NET開發環境提供的開源AJAX工具包,它可以執行於ASP.NET 1.1和2.0。

三、工作流(workflow)

Workflow.Net是使用微軟.Net技術基於wmfc標準的建立工作流引擎。

NetBPM是JBpm移植到.net平臺下的一款開源工作流軟體。NetBpm可以很容易和.Net應用程式整合在一起,可以建立,執行和管理工作流程式。

Bpm Tool支援將業務模型轉換成軟體模型。業務開發人員可以使用模型驅動的方法設計,實現,執行和跟蹤業務流程。因此開發人員能夠更容易的關注業務邏輯的變化。

三、文字編輯

FCKeditor是一款功能強大的開源線上文字編輯器(DHTML editor),它使你在web上可以使用類似微軟Word 的桌面文字編輯器的許多強大功能。它是輕量級且不必在客戶端進行任何方式的安裝。

FreeTextBox 是一個基於 Internet Explorer 中 MSHTML 技術的 ASP.NET 開源伺服器控制元件。這是一款優秀的自由軟體(Free Software),我們可以輕鬆地將其嵌入到 Web Forms 中實現 HTML 內容的線上編輯,在新聞釋出、部落格寫作、論壇社群等多種 Web 系統中都會有用途。

VietPad是一個功能完整的跨平臺的Java/.NET的Vietnamese Unicode開源文字編輯器。支援開啟,編輯,列印,轉換,排序,和儲存基於文字的Unicode格式的Vietnamese檔案。

NetSpell是一款.NET框架下的開源拼寫檢查引擎。

PPC_edit是一款應用在Pocket PC上的開源文字編輯器,它支援TXT, RTF, HTML, WordML, DocBook 和 ZIP格式的檔案,螢幕上會顯示國際標準的軟鍵盤。

四、部落格(Blog)

NovaShare是一款Blog引擎,它使你建立基於互動式的web的新聞和論壇網站,很像WonkoSlice或Slashdot。管理員可以釋出文章和發起投票,瀏覽者可以建立使用者帳號,發表議論等等。

dasBlog是從BlogX 網上日誌引擎發展而來。像Trackback ,Pingback 一樣增加許多附加的特徵,有完整的Blogger/MovableType API支援,API註釋,完整的Radio-style模板定製,支援Mail-To-Weblog/POP3的附件和內嵌圖片,基於WEB的 DHTML,OPML,配置的編輯器。

DotText是一個被使用了數百個blogs的強勁的blog引擎。這是一個N-tiered應用的例子。

tBlogger是一個C#開發的完整的blog網站程式,使用XML配置。

五、系統構建

.NETZ是一款免費開源工具,它可以壓縮和打包微軟 .NET 框架可執行檔案(EXE, DLL)以使他們更小。更小的可執行檔案佔用的磁碟空間較少且因為讀取檔案時對磁碟的訪問較少而使讀取數度更快。它和PE(portable executable)打包工具不一樣,.NETZ是使用 C# 編寫的存粹的 .NET 解決方案。.NETZ可以用來打包幾乎每一種 .NET 支援的語言編寫的程式。.NETZ支援 .NET EXE 和 非共享(non-shared)的 DLL 檔案。壓縮過的程式能以相同的方式解壓縮這些對終端使用者是透明的。

NAntContrib為NAnt提供定製任務的工具。

Prebuild是XML驅動的一款跨平臺pre-build工具,使開發人員很容易就可以為IDE和.NET開發工具生成專案或構建檔案。它支援 Visual Studio .NET 2002, 2003, 2005, SharpDevelop, MonoDevelop 和 NAnt。

BusyBeeBuilder是.NET平臺下功能強大,易於使用,可擴充套件的開源構建自動操作工具。

Draco.NET 是 Windows 服務應用程式。它的設計使其容易持續的整合新特性。Draco.NET監視你的原始碼儲存庫。當探測到你的專案有變化時自動重新建立專案並把包含變化列表的建立結果傳送到你的Email。

Build Studio為軟體的自動構件處理提供了一套完整的解決方案。

CruiseControl.NET是.NET平臺下的一款整合伺服器。

NAnt類似Apache專案下的Ant,是.Net下的開源構建工具。適用在自動編譯.NET應用的場合,如.NET專案的每日構建(nightly build)。

五、圖表製作

ZedGraph是C#編寫的.NET類庫,提供了使用者控制元件和web控制元件。它可以建立2D的線性圖、條形圖和餅圖。它功能完整且有詳細的功能自定義,不過 使用預設的選項就足夠好用了。一款類似 PieChart, StackBar, LineChart的C#開源圖表元件。

NPlot是一款.NET下的開源圖表類庫.它值得稱道的地方是優雅且靈活的API設計.NPlot包含了Windows Form控制元件, ASP.NET控制元件和一個建立Bitmap圖片的類。還有一個可用的GTK#控制元件。

XSCharting是C#開發的圖表元件,提供了多種多樣的圖表選項。

DaveChart是一個免費的DotNet類庫。

NChart 提供了很多值得應用在商業,教育等多個領域的2 D圖表。

六、聊天系統

Dot Net Chat server是基於DotNet框架開發的聊天伺服器和客戶端專案。

七、內容管理系統(CMS)

Ludico是C#編寫的居於ASP.NET 2.0的Portal/CMS系統。它的模組化設計是你可以按照你希望的使用或開發網站功能。它裡面有高階的使用者管理,一個所見即所的(WYSIWYG)的編輯器等。

mojoPortal是一款C#開發的面相物件網站框架,它可以執行於Windows的ASP.NET 和GNU/Linux 或Mac OS X的Mono的平臺上。

Cuyahoga是C#開發的靈活的CMS / Portal 解決方案。它可以執行於Microsoft .NET 和Mono 平臺,支援SQL Server, PostgreSQL或MySQL作為底層資料庫。

Umbraco是一款在.net平臺下C#開發的開源內容管理系統,該系統效率,靈活,使用者介面都不錯。

Kodai CMS是.NET平臺下的一款功能齊全的內容管理系統。

Rainbow專案是一款使用Microsoft''s ASP.NET和C#技術開發的有豐富功能的開源內容管理系統。

NkCMS是使用ASP.net和Sql server 2000開發的內容管理系統。

Amplefile是一款內容管理系統,是.Net環境下的windows應用程式,使用了.Net remoting.

Go.Kryo是一個用ASP.NET(C#).NET 實現的簡單的內容管理系統,後臺資料庫使用Microsoft SQL Server 。

ndCMS是 ASP.net (C#)下的一個內容管理系統。它提供了使用者管理,檔案管理,一個WYSIWYG編輯器,模板管理,拼寫檢查和內建的http壓縮。ndCMS的目標是提供一個簡單而快速的方式部署.Net站點以節省你的時間和金錢。

八、程式碼覆蓋(Code Coverage)

NCover是.NET框架下的C#版本程式碼覆蓋分析工具。NCover可以對程式進行 line-by-line 的程式碼覆蓋統計。

九、論壇系統

YetAnotherForum可以作為ASP.NET開發的網站的論壇或是留言板。它使用MSSQL作為底層資料庫。

十、開發工具(IDE)

SharpDevelop是一個DotNet平臺下的免費開發工具,支援C#和VB.NET。

MonoDevelop是可以支援C#和其它符合.Net規範的開發語言的IDE。

C# Studio是 C#/Mono/GTK# 開發者的一個簡單的IDE。

十一、安裝製作

izfree是一套套免費的工具用於幫助建立使用Microsoft''''s Windows Installer 技術的安裝程式。使用izfree你可以為你的應用程式製作強勁的安裝程式。

Windows Installer XML (WiX)可以重XML原始檔建立Windows程式安裝包的工具集。它支援命令列方式,開發人員可以把結合它來建立MSI和MSM安裝包一個可以和商業軟體安裝產品相比的開源打包工具。

十二、IoC容器

Spring.net是從java的Spring Framework移植過來的。java的Spring包含了許多功能和特性,在當前的Spring.net都有提供。Spring.net最初發布的版本包含了一個很有特色的IoC容器。

Castle是一組應用開發的工具,內含一個簡單的IoC容器。

StructureMap是.NET環境下的一個輕量級依賴注入工具,StructureMap也是一個靈活的、可擴充套件的通用“外掛”機制的.NE

十三、Bug追蹤

BugNet是一款C#編寫的基於Web的開源Bug跟蹤系統。

BTsys是一款輕量級的開源桌面Bug跟蹤系統,是C#和ADO.NET實現。一個Bug記錄和跟蹤的解決方案,支援檔案附件和註釋歷史。

BugTracker.NET是使用ASP.NET 和 C#開發的基於web的開源Bug跟蹤系統。需要SQL Server 或 MSDE支援。它安裝簡單,容易使用,功能強大。

BugBye是一款ASP.NET和C#開發的基於web的Bug跟蹤系統。

十四、日誌工具

log4net是一個可以幫助程式設計師把日誌資訊輸出到各種不同目標的.net類庫。它可以容易的載入到開發專案中,實現程式除錯和執行的時候的日誌資訊輸 出,提供了比.net自己提供的debug類和trace類的功能更多。log4net是從java下有卓越表現的log4j移植過來的。它是 apache基金資助的專案的一部分。

NLog是C#編寫的開源日誌類庫,它的設計思想是使其簡單而靈活。NLog讓你處理診斷的日誌訊息,用相關資訊擴充訊息,依照你的選擇格式化日誌訊息和把日誌訊息輸出到一個或多個目的地。

LogThis是為.NET應用程式提供的一款C#開源日誌框架,它可以嵌入到應用程式之中。

AppLog是一個簡單的應用日誌工具。它使用C#開發,且使用ByteFX MySQL 資料訪問庫.。

C#開發的可擴充套件日誌工具,有高階訊息佇列支援,可以非同步使用。

CSharp Logger是apache繼log4net專案後設計的又一個日誌工具。它用來向Windows的事件日誌寫入debug、info、warn和error四個等級的資訊。

十五、網路客戶端

.NET FTP Client是C#編寫的開源類庫。

.NET Telnet是微軟.NET Framework下的C#開發的開源telnet類庫。它的靈感來至Java Telnet Application。

metro這個專案是C#編寫的類庫,它提供了一套豐富的類使開發IP version 4, TCP, UDP and ICMP等工作更容易。它包含了有很有用的工具如包嗅探器,網路分析工具例如路由跟蹤,ping等。

LJ.NET是LiveJournal站點的客戶端。它為LJ線上日誌服務提供了簡單而強大的使用者介面。

NET VNC Viewer 是一款完全用C#開發的開源VNC觀察器。它相容Smartphones, Pocket PC和Windows的電腦(.NET CF or .NET Framework)。它比起其它觀察器的優點是可以在Pocket PC上全屏顯示而且可以旋轉螢幕。

GVDownloader允許你從google videos, metacafe, putfile, youtube, break.com 和更多的地方快速下載內含的視訊和多媒體。它的包含一個強勁IE外掛和位於你係統托盤的獨立程式。

DotNetOpenMail能夠使你在微軟.net框架開發的asp.net, WinForm應用程式傳送Email。它是C#編寫的開源元件,它不需要使用System.Web.Mail類庫就可以容易的建立帶附件HTML和 Plain-text的Email。程式設計師不需要知道很多相關的細節就可以使用不同的字符集或不同的MINE編碼來建立 multipart/alternative,multipart/related和multipart/mixed的MIME訊息。

DotMSN是一款獨立的開源類庫,它不需要和官方的MSN Messenger互動,因此不必安裝MSN Messenger就可以使用DotMSN和MSN Messenger服務通訊.DotMSN是C#編寫的,所以.NET環境支援的語言都能夠使用.DotMSN類庫使用簡單而且實現方便。它靈活,堅固, 輕量級利於整合到任何應用系統.使用DotMSN的應用系統能實現從建立訊息機器人到自定義客戶端等各種不同的功能.如果你的應用程式需要和 Messenger服務通訊,DotMSN是一個不錯的工具.

SharpSSH使用C#實現了SSH2協議,它支援SSH, SCP 和 SFTP.

OpenPOP.NET一組和POP Servers通訊的.NET類庫。

IceChat是為連線多樣的IRC Servers設計的Internet Relay Chat Client。

lphant是為edonkey/emule開發的開源客戶端程式。

.NET FTP Client C#開發的類庫。

OpenSmtp.net 是 C# 開發的開源SMTP元件。它不依賴.NET Framework 的System.Web.Mail 包中的類。允許開發人員使用不同於MS SMTP的SMTP 伺服器且提供了web service而可以通過HTTP傳送email。

網路伺服器

ODC(#)H是一款C#編寫的開源hub software,它功能強大,消耗的資源少且支援外掛功能。

Dawn of Light (DOL)是第一個開源的Dark Age of Camelot (DAOC)遊戲伺服器,你可以建立自己的伺服器且自己設計遊戲內容。DOL使用.Net Framework框架的C#編寫,使用XML和MySQL儲存資料,支援Windows和Mono平臺。

NeatUpload可以讓ASP.NET開發人員把磁碟上的檔案通過流的方式上傳並且可以監視上傳進度。它是開源的且在 Mono''s XSP/mod_mono和微軟的ASP.NET下執行得一樣好。包含2個自定義控制元件:*使用者可以通過INPUTFILE選擇一個要上傳的檔案。

ProgressBar可以用進度條方式或彈出窗方式顯示上傳進度。當JavaScript可用時ProgressBar是用類似AJAX的無重新整理方式展現,但也允許JavaScript不可用的使用者見到上傳進度。

NMail ,C#開發的開源程式,提供SMTP 客戶端和伺服器, POP3 和 IMAP4 伺服器。

http://www.cnblogs.com/nuaalfm/admin/ftp://ftp.net/是使用C#編寫的開源多執行緒FTP程式。

CSharp Email Server C# Email Server是 Java Email Server (JES) 的C#版本。

PDF類庫

PDFsharp是一款可以讓.NET框架支援的任何語言很容易的建立PDF檔案的類庫。

ASP.NET FO PDF 是一款C#編寫類似於ASP.NET伺服器控制元件的控制元件。它接受DataTable 和一些其它引數來建立XSL FO,並使用NFOP (Apache FOP Port in J#) PDF Formatter來繪製一個類似PDF Report 的DataGrid 。今後將會增加更多的標籤來可以生成XSL FO 。

Report.NET 開源類庫包含了生成精確PDF文件的類。它是.NET平臺下的C#編寫的,可以幫助你建立簡單的靈活的PDF檔案。你可以從任何ADO.NET的 DataSet取得資料來建立PDF文件。ASP.NET可以用Report.NET來建立動態的PDF響應頁面。

SharpPDF是可以用來簡單的建立PDF檔案的C#類庫。它建立的檔案百分白相容PDF格式。

iTextSharp是一款開源的PDF操作類庫,使用它可以快速的建立PDF檔案。http://hardrock.cnblogs.com/ 是一個關於 iTextSharp的中文Blog。

持久層框架

NHibernate是一個面向.NET環境的針對關係型資料庫的物件持久化類庫。 NHibernate來源於非常優秀的基於Java的Hibernate關係型持久化工具。 NHibernate從資料庫底層來持久化你的.Net物件到關係型資料庫。NHibernate為你處理這些,你不用自己寫SQL去資料庫存取物件。你 的程式碼僅僅和物件關聯,NHibernat自動產生SQL語句,並確保物件提交到正確的表和欄位中去.大量減少開發時人工使用SQL和ADO.NET處理 資料的時間. NHibernate可以幫助你消除或者包裝那些針對特定資料庫的SQL程式碼,並且幫你把結果集從表格式的表示形式轉換到一系列的物件去。因此對於那些在 基於.NET的中間層的應用中,它們實現物件導向的業務模型和商業邏輯的應用,NHibernate是最有用的。

FileHelpers Library是一款C#編寫的開源 .NET 類庫。它使用簡單,很容易就可以從固定長度檔案或界定記錄(CSV)讀/寫資料。它也支援從不同的資料儲存格式(Excel, Access, SqlServer)匯入/匯出資料。

Websharp是國人開源的一款開源持久層框架,它的目標是設計一個基於.Net的通用的應用軟體系統的框架,以簡化基於.Net平臺的企業應用軟體的 開發。目前,Websharp關注於企業應用軟體的以下幾個方面:1、資料庫訪問 2、 O/R 對映 3、 AOP 4、 分散式訪問

ObjectBroker是.NET平臺下的一款開源O/R對映框架。它支援物件快取,1:1, 1:n 和 m:n的關聯對映等特性。

Gentle.NET是一款開源的與關聯式資料庫(RDBMS)無關的物件持久層框架,可以自動生成SQL和物件結構。它擁有一個SQL工廠用來建立自定義查詢、DataView構建助手和卓越的效能和完善的文件。

Ubik是C# 2.0下的ORM持久層框架,當前是WinForms應用程式開發提供的.它支援OPath的子集而可以進行物件導向查詢,且包含一個網路事件系統.

NDal是一個資料提取層(DAL)框架,它可以執行在.NET和Mono環境下。

Persist.NET是C#編寫的一款完整的持久層框架。

ObjectBroker是.NET平臺下的資料庫物件/關係對映(O/R Mapping)框架。

iBATIS.NET幫助你的應用系統建立更好的持久層框架。

Advanced Data Provider是為ADO.NET提供的動態資料提供者。可以讓應用程式透明的訪問不同的ADO.NET 資料提供者。

OJB.NET是一款.NET平臺下的物件/關係對映(O/R Mapping)工具。

門戶系統

OmniPortal基於一種web-portal-kernel(Web門戶核心)的思想而構建的開源基礎框架,它解決了安全控制、主題和本地化等。你 可以基於 OmniPortal 來更容易的建立任意的Web應用系統(例如 ERP, CMS, CRM)。它支援Mono 和.Net 。對於Web開發人員來說,OmniPortal為他們提供了一款優秀的二次開發基礎類庫。

SharpNuke.NET是一款C#開發的基於 ASP.NET 的開源 Portal/CMS。最初是從流行的VB.NET開發的web portal系統DotNetNuke移植過來的的。以後的版本將會相容 Windows和 Linux Mono。

Personal .NET Portal是一個基於Web的個人門戶系統。它試圖提供一種簡單的方式建立個人網站,頁面使用標籤和模板建立。

My Community Portal提供了一個統一的Internet門戶,作為論壇,群組,聊天,你自己的Email,搜尋引擎,網路目錄,個人主頁,投票還有更多的功能入口。

剖析工具(Profilers)

Prof-It是一款獨特易用的C#程式剖析工具。當保持對一個最小量的原始碼的探測時,它為每一條語句測量執行頻率。

NProf不僅僅是成熟的剖析程式,也是一套可以用來建立其它功能齊全的剖析程式的完整API,以及用視覺化的工具擴充套件的預設GUI。

NProfiler,.NET平臺下的一個應用程式剖析工具。

專案管理

SharpForge支援協作多個軟體專案的開發和管理,它為你的團隊提供類似 SourceForge 和 CodePlex的功能。SharpForge是C#開發的.NET 2.0開源專案。

User Story.NET是一個Extreme Programming 專案。

RSS和RDF工具

Rss Bandit是C#開發的開源RSS閱讀器,它內建多國語系,支援Atom 1.0以及其他各種的RSS feed格式。它畫面漂亮,擁有分頁瀏覽功能,軟體細部設定彈性度高。它的操作畫面直觀簡單易懂,有一個很好的Command模式和ListViewEx 來使用,可讓使用者很快的上手。

iPodder.NET是一款C#編寫的開源媒體收集器,它能自動幫你從網際網路上下載音樂,能幫你輕鬆地從成千上萬的音樂中選擇你喜歡的。用它設定好訂閱 RSS feeds後,只要節目一有更新,它就自動下載了,你不必大量的浪費時間自己手工下載。它還整合了iTunes,建立播放列表和iPod同步功能,你可以 用Apple iTunes或Media Player播放,也可以把音樂匯入到你的iPod或其他MP3播放器中。

FeedExpress主要是讓你訂閱一些RSS/RDF資源,知名的如FeedExpress裡的Subscriptions。它和Outlook Express讓你訂閱一些新聞組是一樣的。

RSS.NET是一款操作RSS feeds的開源.NET類庫。它為解析和編寫RSS feeds提供了一個可重用的物件模型。它完全相容RSS 0.90, 0.91, 0.92, 和 2.0.1等版本。

GtkSharpRSS是C#開發的開源RSS和RDF客戶端,它用於 Mono, Gtk#, 和 RSS.NET。它也可以通過內嵌於Mozilla的視窗來顯示內容。

Atom.NET是一款完全使用C#開發的開源類庫,它的目標是提供便捷的方法來操作Arom Feeds。它提供一個物件模型來寫入和解析Atom Feeds。它只相容0.3Atom規範,可以執行於微軟.NET 1.x,Mono 0.29 或更高版本。

NRss是為微軟.NET框架和Mono下提供的開源類庫,它讀取RSS Feeds元素然後以樹型結構來展現物件關係。

Aggie是一個新聞收集器,它是桌面應用程式,可以下載最新的新聞並通過web頁面的形式呈現。

mail2rss是.NET下的 web service,它在你請求時檢查你的電子信箱並返回包含電子信箱裡的訊息的 RSS feed。它是完全用C#開發的開源專案,沒用使用任何第三方控制元件。

規則引擎

NxBRE是.NET平臺下的一款開源輕量級的業務規則引擎(aka Rule Based Engine),它由正向序列的推理引擎(forward-chaining inference engine)和XML驅動流控制引擎(XML-driven flow control engine)組成.它支援 RuleML 0.9 Naf Datalog 和 Visio 2003 建模。

SRE (Simple Rule Engine)是.NET下的一款輕量級的開源正向序列的推理規則引擎(forward chaining inference rule engine)。它容易理解,可以解決複雜的問題。

搜尋引擎

NLucene是Lucene的.NET版本。

DotLucene,Lucene.Net開源專案轉向商業化後,DotLucene以Lucene.Net作為基礎繼續進行開發。

版本控制(CVS)

Porc是為CVS和專案管理工具提供了完整的圖形化介面,它在CVS的基礎上增加了一些有趣的功能。它是.NET平臺下用C#編寫的。

Sharpcvslib是C#語言編寫的CVS客戶端API。當前它為公共CVS命令提供了核心函式。

NetCvsLib是為.NET平臺下C#開發的一個CVS客戶端。它作為一個單獨的程式集而實現,因而可以很容易的整合到其它專案中去。

SQL客戶端

SqlBuddy是C#編寫的一款用於Microsoft SQL Server和MSDE的開源工具,使用它可以很容易的編寫SQL指令碼。SqlBuddy提供的功能和查詢分析器的目的有些微不同,它傾向於幫助使用者編寫SQL。

QueryCommander是一款開源的Sql editor,模擬微軟的查詢分析器,Visual Studio的環境型別。QueryCommander的特點包括類似IntelliSense功能,自動註釋,xml文件模型,xml2data等。

SQL Buddy是一款有特色的免費MSDE / Sql Server IDE,它是用.NET框架的C#編寫。

Database Commander是Windows作業系統下的一款使用者介面友好的資料庫管理工具。

模板引擎

NVelocity 是一個以 .NET 為基礎的模板引擎。它允許任何人通過簡單而強大的模板語言來定義物件。

測試工具

NUnit一款單元測試框架,它可以應用於遵循.NET框架標準的所有語言下。NUnit最初是從JUnit移植過來的。NUnit完全使用C#編寫且設計時考慮了多數.NET語言的特性,例如自定義屬性和其它反射特性。

NMock是一款.NET平臺下的基於動態代理的Mock模擬物件類庫,用於C#開發。Mock物件使測試更簡單,它測試單個元件或單個類時不需要其它所 有元件真正實現。也就是說我們可以僅僅只是測試一個類,比起測試一個完整的物件關係樹更容易查清楚Bug。Mock物件一般用於以測試為驅動的開發當中。

TestDriven.NET是一款和Visual Studio .NET無縫結合的測試外掛。它可以和NUnit, MbUnit 和 Team System緊密結合。

Rhino.Mocks源於EasyMock.Net,它試圖提供一種更簡單的方法去建立和使用mock objects且使你得到更好的重構支援。它結合了EasyMock.Net和NMock的方式。

Dot NetUnit實現了XUnit 測試框架,是.NET平臺下的單元測試元件。

EasyMock.NET是由Java實現的EasyMock到.net平臺的一個移植版本的一組類庫。它提供了一個簡單的方法用來模擬介面和遠端物件。

dotunit是JUnit移植到微軟.net平臺的測試框架。它可以實現自動化測試。

NUnitForms是NUnit的擴充套件。它為Windows Forms應用程式提供單元測試和壓力測試,可以容易的用它為你的Windows Forms類進行自動化測試。

Web框架

NStruts 是java下大名鼎鼎的struts開源MVC框架的ASP.NET版本,是jakarta struts框架的一部分。

Maverick.NET是從Maverick移植來的.NET版本,是一款開源的 Web MVC框架.它專注於MVC邏輯,它支援豐富的模板和轉換技術。

MaverickLite是ASP.Net下的一款簡單的開源表現層框架。它在建立在Maverick.Net framework基礎上。它使用front controller的方式來處理請求。

Ingenious MVC ,基於.NET 2.0的構MVC結構的應用程式,它包含即開即用(out-of-the-box)的特性支援ASP.NET和Windows Forms應用程式.它也可以在大多數方法中擴充套件和定製.

Websharp是.NET平臺下的一款輕量級應用框架。

Email客戶端

GmailerXP是為Google的Gmail服務提供了全套的工具開源程式。線上所能做的GmailerXP都允許使用者做,它也整合了你任何時候在Gmail需要的其它一些程式的特點(GML, Gmailto,等)。

RemoteCalendars是C#開發的為Outlook 2003/2007提供的一款開源 COM-.NET 外掛。安裝完這款外掛後,Outlook的用都可以用Outlook 2003/2007訂閱、重新讀取和刪除遠端iCalendar(RFC 2445)。

SharpWebMail是一款C#編寫的ASP.NET下的EMail客戶端。它通過POP3伺服器接收郵件,通過SMTP伺服器傳送郵件。它的配置很簡單(只需要在web.config 裡面做幾個設定)。

Web測試

NUnitAsp是一款自動測試 ASP.NET頁面的開源工具. 它是從NUnit擴充套件來的。

Wiki引擎

Perspective是一款C#開源Wiki引擎,它使使用者可以很容易的合作進行編輯,連結和共享Web頁面,它裡面有安全和分級的管理環境。Perspective居於奇妙的Wiki思想,包含了其它一些有前途且效果好的特性。

DevHawk Wiki是一款.NET平臺下由C#實現的開源Wiki引擎。

ProntoWiki是使用VWD (Visual Web Developer)編寫的C#開源wiki引擎,ASP.NET 2.0 和 SQLExpress 2005作為後臺。Wiki引擎速度快且容易使用,提供了和 rich text editor 一樣的文字標記( text markup )功能。它可以自動通過web介面接收圖片和檔案作為附件。另外,ProntoWiki的特點還有頁面可以在貼出或更新之前預覽,基於角色的使用者認證,使 用 web parts 自定義外觀和佈局,歷史跟蹤,和功能查詢。

FlexWiki是一款使用.NET技術(C#和ASP.NET)編寫實現的開源多人協作的寫作工具。

Thufir提供了字處理和文件連結功能。它類似Wiki-Wiki ,且它具有“所見即所得”的介面。它還可以通過和Word互動來利用Word的拼寫檢查功能。

XML解析

ODF Add-in for Microsoft Word是一款開源的XML轉換器,它提供的工具為在 Open XML Formats 和 Open Document Format(ODF)之間轉換提供了橋樑。作為第一款這類元件,ODF Add-in for Microsoft Word 2007使你可以在Word裡開啟和儲存ODF文件。

NDigester是Jakarta Commons-Digester 工具的.NET實現版本。提供了完整的對XML文件的處理控制。

SAX.NET是用來操作XML的簡單的API。它是從最初在java上被廣泛使用的API移植來的。

多媒體工具

FreeImage是為開發人員提供的開源類庫專案,它支援多種流行的圖片格式(PNG, JPEG, TIFF, BMP等).FreeImage簡單,易用,快速,多執行緒安全,相容所以32位的windows並且是跨平臺的(Linux和Mac OS X).

TVGuide是一款顯示通過簡單而清晰的介面下載的TV列表的Windows程式。

DirectShow.NET Library 這個類庫的目的是使你可以從.NET應用程式內部呼叫Microsoft''''s DirectShow的功能。它支援Visual Basic .NET 和 C#,理論上應該是可以支援任何.NET語言。

iTunes Agent是和iTunes一起使用的C#開源MP3播放器。它可以使得在播放MP3時,播放列表與MP3自動播放器同步。

MeGUI是一款基於ISO MPEG-4的全面的GUI解決方案。它可以支援使用MPEG-4 ASP (XviD & libavcodec MPEG-4)標準的mencoder,使用MPEG-4 AVC (x264) 標準的x264.exe 或 mencoder,使用(HE)AAC audio標準的BeSweet、Nero AAC encoder和使用MP4 muxing標準的mp4box。

OpenImageManager是一款C#開發的新的開源圖片管理器。它基於非常流行的圖片檢視器ACDSee(TM)的思想設計,它的功能有縮圖生成,HTML相簿生成器,支援10種語言等等。

abrViewer.NET是C#編寫的可以批量瀏覽和輸出Adobe Photoshop的筆刷(.abr files)的開源工具。

MeWiG是使用.NET框架開發的Windows下的開源MEncoder(MPlayer的一個組成部分)。你能夠轉換成幾乎任何視訊資源,無需要命令列操作。

VTK.NET是.NET包裝的Visualization Toolkit。你可以使用它來編寫C#、C++、Visual Basic 或 J#的Windows Forms應用程式。它包含在設計時可拖拽的Windows Forms控制元件。

SubtitleCreator使你可以為你的DVD建立對白字幕。它擁有先進的同步特性,DVD預覽,和一個簡單的所見即所得(WYSIWYG)的編輯器。當然你也能夠修改現有DVD的對白字幕的定位和顏色。

Paint.NET是在Windows下使用C#編寫的一款出色的開源影象編輯器。

MediaPortal試圖幫你把電腦變成一個高階的Multi-Media Center / HTPC。它允許你聽你喜歡的音樂&收音機,看你的video和DVD,觀看,確定和記錄實況電視等其它功能。MediaPortal是開源的系 統,你可以完全免費的獲得它。任何人都可以幫組開發MediaPortal 或者根據自己的需要把Media Portal 進行調整。

C#遊戲

Exult是可以在現在的作業系統上面執行Ultima7的遊戲引擎,它提供了一個地圖編輯器和其它的一些工具讓你製作屬於你自己的模型和遊戲.

Ch2r是第一款為光暈2(Halo 2)提供的開源模型編輯器。

這是一款從在Palm平臺上流行的Space Trader遊戲移植的Windows版本。

EMU7800是C#編寫的一款Atari 2600/7800模擬器。

BooGame是面相物件的 CLS-compliant,開源2D遊戲引擎框架。它提供了高階的硬體加速video,audio,keyboard,mouse,內嵌指令碼和許多圖片格式。它使用C#開發的,目標是支援.NET 1.1, 2.0 和 Mono 平臺。

RealmForge這款開源的.NET 3D遊戲引擎前身是Visual3D.NET,它是一套使用C#、 .NET 2.0和XNA進行視覺化設計和開發3D遊戲、模擬軟體和互動式環境的框架和工具集。

Pocket Sudoku是 Pocket PC (Windows Mobile)上的數獨(Sudoku)遊戲。它可以有五種不同等級的難度來建立數獨(Sudoku)迷題,解答正確任何迷題,都會用鉛筆標記。

CsGL在.Net框架下為OpenGL 1.1 - 1.4和許多擴充套件的支援提供支援.

文件工具

NDoc 可以將 C#.NET 編譯生成的程式集和對應的 /doc XML 文件,自動轉換成如 .NET Framework SDK 類庫文件或者 MSDN Library 線上 .NET 類庫文件形式的程式碼文件,讓您快速擁有專業級的類庫API 文件。

指令碼語言

Sharp Vector Graphics (SVG#)是.Net框架下C#開發的文件物件模型。它幫助你在.Net平臺上進行SVG開發。

IronPython是.NET平臺上的Python的CodeName。它擁有一個完全動態的互動式直譯器,可以支援所有的.NET型別庫,並且整合 了.NET Framework的諸多優點,甚至可以用Python的類來擴充套件.NET類。IronPython遵從ECMA的CLI標準(ECMA-335),可以 執行在Microsoft .NET Framework和MONO上。

地理資訊系統(GIS)

SharpMap是一款易於使用的地圖渲染器,它可以為Web和Windows應用程式渲染GIS資料。SharpMap是使用C#編寫,基於.NET 2.0框架上開發的開源專案。

monoGIS將成為Mono平臺下的開源完整GIS。已經發布了internet mapserver,OGC WMS實現和一些工具像空間格式轉換。

NASA World Wind 是C#開發的個人電腦上的開源的3D圖形虛擬地球系統。它結合了美國國家航空航天局(NASA)從衛星拍攝的影象,這些影象應用於Blue Marble, Landsat 7, SRTM, MODIS 以及其它更多的地方。

其它C#開源專案

DockPanel Suite是一款開源的.Net Windows Forms開發環境下的停靠控制元件(docking)類庫。它模仿Visual Studio .Net的效果開發的。

wx.NET是基於.NET通用語言基礎結構 (CLI)的開源專案。它致力於開發一個基於.NET的GUI庫,它按照wxWidgets的類層次用C#編寫,可以在多種CLI下執行,包括.NET,Mono,和DotGNU Portable.NET。

MMC .NET類庫是為Windows的MMC+Snapin開發提供支援而包裝的一套開源類庫。

DPAToolkit(Design Pattern Automation Toolkit)是應用設計模式設計應用程式的開源工具包,它有便捷的程式碼生成,反向工程功能。拖拽(Drag and Drop)方式便捷的建立UML類圖。支援為程式碼生成,反向工程編寫自定義外掛。

mjbWorld 是一款開源的3D編輯器,它允許使用者通過圖形介面的選擇和拖拽方式來編輯圖形。它基於和應用X3D與VRML標準。該軟體目的用於利用建立開放免費程式建 立3D世界。同時它也可以用於其他免費開放軟體程式之間進行資料交換。mjbWorld有Java, C# 和C++ /Qt等版本。

MonoCalendar是.NET平臺下的開源日曆程式,它的目的是為Mac平臺之外的其它平臺提供一款類似iCal的日曆程式。

Data Tier Generator是一款微軟 .NET平臺下的開源專案,它為訪問SQL Server 2000而生成儲存過程的SQL Server 2000指令碼和C#類。這些儲存過程包含了Insert, Update, Delete, Select, 根據PK的Select, 根據FK的Select的SQL指令碼。

Finisar.SQLite是.NET框架下的一款為存取SQLite-Databases提供的ADO.NET Data Provider。

Math.NET的目標是為提供一款自身包含清晰框架的符號運算和數學運算/科學運算,它是C#開發的開源類庫。Math.NET含了一個支援線性代數的解析器,分析複雜微分,解方程等等功能。

Ascii Generator dotNET (ascgen2)是一款把圖片轉換成高質量的ASCII字元組合(ASCII art - text)。第一個版本支援變形和粗體字型,和實時調節輸出。

GPSProxy是.NET Compact Framework下的開源程式。它通過COM口在Pocket PC之間拷貝GPS資料,可以把GPS資料格式從NMEA 0183轉換成Garmin GPS。它是基於.NET Fra的Windows版本。

FOP C# Port這是Apache居於java的 XSL-FO 格式轉換器的C#版本。它採用並擴充套件了XSL-FO標準使FOPs在可以嵌入.NET CLR管理程式碼應用。

相關文章