收集一些優秀的DoNet開源項目

4418040-962c7284a16a4312.png
Paste_Image.png

Json.NET
http://json.codeplex.com/
Json.Net是一個讀寫Json效率比較高的.Net框架.Json.Net 使得在.Net環境下使用Json更加簡單。通過Linq To JSON可以快速的讀寫Json,通過JsonSerializer可以序列化你的.Net對象。讓你輕松實現.Net中所有類型(對象,基本數據類型等)和Json的轉換。

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

Faker.Net
https://github.com/jonwingfield/Faker.Net
開發的時候是不是為測試數據煩惱?Faker.Net可以非常方便幫你生成大批量測試數據。例如人員表里面的姓名、性別什么的。

Html Agility Pack
http://htmlagilitypack.codeplex.com/
Html Agility Pack 是CodePlex 上的一個開源項目。它提供了標準的DOM API 和XPath 導航--即使 HTML 不是適當的格式!HTML Agility Pack 搭配 ScrapySharp,徹底解除Html解析的痛苦。

NCrawler
http://ncrawler.codeplex.com/
NCrawler是一款國外的開源網絡爬蟲軟件,遵循LGPL許可協議。其HTML處理使用的是htmlagilitypack開源庫,采用xpath的方式處理定位網頁元素,十分方便。

SuperWebSocket
http://superwebsocket.codeplex.com/
SuperWebSocket是基于.NET開源Socket框架SuperSocket開發的, SuperSocket所支持的大部分功能在SuperWebSocket中得到了繼承。用戶可通過SuperWebSocket來快速的構建可靠的,高性能的websocket服務器端應用程序。

SuperSocket
http://supersocket.codeplex.com/
SuperSocket 是一個輕量級的可擴展的 Socket 開發框架,可用來構建一個服務器端 Socket 程序,而無需了解如何使用 Socket,如何維護Socket連接,Socket是如何工作的。該項目使用純 C# 開發,易于擴展和集成到已有的項目。只要你的已有系統是使用.NET開發的,你都能夠使用 SuperSocket來輕易的開發出你需要的Socket應用程序來集成到你的現有系統之中。

Quartz.NET
http://www.quartz-scheduler.net/
Quartz.NET是一個開源的作業調度框架,是 OpenSymphony 的 Quartz API的.NET移植,它用C#寫成,可用于winform和asp.net應用中。它提供了巨大的靈活性而不犧牲簡單性。你能夠用它來為執行一個作業而創建簡單的或復雜的調度。它有很多特征,如:數據庫支持,集群,插件,支持cron-like表達式等等。

Lucene.Net
http://lucenenet.apache.org/
Lucene.net是Lucene的.net移植版本,是一個開源的全文檢索引擎開發包,即它不是一個完整的全文檢索引擎,而是一個全文檢索引擎的架構,提供了完整的查詢引擎和索引引擎。開發人員可以基于Lucene.net實現全文檢索的功能。

HttpLib
http://httplib.codeplex.com/
一個基于C#語言的http協議的類庫,Httplib讓異步交互處理數據更容易了。類庫的方法包括:上傳文件到服務器,獲取頁面數據等等。

Smart Thread Pool
http://www.codeproject.com/Articles/7933/Smart-Thread-Pool
智能線程池,用SmartThreadPool可以簡單就實現支持多線程的程序,由線程池來管理線程,可以減少死鎖的出現。SmartThreadPool還支持簡單的生產者-消費者模式,當不需要對任務進行持久化時,還是很好用的。

DocX
https://docx.codeplex.com/
DocX是一個用來操作word的輕量級的類庫。借助DocX,開發人員可以在不需要安裝Microsoft Word的情況下操縱word2007/2010文件。

NPOI
http://npoi.codeplex.com/
NPOI 是 POI 項目的 .NET 版本。POI是一個開源的Java讀寫Excel、WORD等微軟OLE2組件文檔的項目。使用 NPOI 你就可以在沒有安裝 Office 或者相應環境的機器上對 WORD/EXCEL 文檔進行讀寫。NPOI是構建在POI 3.x版本之上的,它可以在沒有安裝Office的情況下對Word/Excel文檔進行讀寫操作。

PDFsharp
https://pdfsharp.codeplex.com/
PDFsharp 是可以輕松地在 .NET 語言中創建PDF文檔的開放源碼庫。它使用相同的繪制程序來創建 PDF 文檔,在屏幕上顯示,以及輸出到打印機。可以修改、合并、拆分已經存在的 PDF 文件,支持透明圖像。

Dapper
https://github.com/SamSaffron/dapper-dot-net
Dapper是一個輕型的ORM類。代碼就一個 SqlMapper.cs文件,編譯后就40K的一個很小的Dll.Dapper很快。Dapper的速度接近與IDataReader,取列表的數據超過了DataTable。Dapper支持Mysql,SqlLite,Mssql2000,Mssql2005,Oracle等一系列的數據庫,當然如果你知道原理也可以讓它支持Mongo db。話說,這個ORM,博主自己也一直在使用,確實十分強悍,至少在性能方面,恐怕.NET里面的大多數ORM只能是望其項背了。

NHibernate
https://github.com/nhibernate
NHibernate是現在開發人員用的較多的一個ORM。NHibernate是一個面向.NET環境的對象/關系數據庫映射工具。對象/關系數據庫映射(object/relational mapping,ORM)這個術語表示一種技術,用來把對象模型表示的對象映射到基于SQL的關系模型數據結構中去。

log4net
http://logging.apache.org/log4net/
log4net庫是Apache log4j框架在Microsoft .NET平臺的實現,是一個幫助程序員將日志信息輸出到各種目標(控制臺、文件、數據庫等)的工具。

SharpSerializer
http://sharpserializer.codeplex.com/
SharpSerializer是一個開源XML和二進制序列化器。SharpSerializer可以序列化Xml和自己的二進制格式,還可以序列化Json等其他文本格式或其他數據加密,壓縮,優化等二進制流。

XProxy
http://xproxy.codeplex.com/
XProxy是一個支持插件的基礎代理程序集。通過編寫簡單的插件程序,你將能開發各種各樣的代理程序。XProxy是一個支持插件開發的數據交換機,可以編寫插件對中轉數據進行處理。內置有NAT插件、加解密插件、反向代理、直接代理、間接代理等插件。

nopCommerce
http://nopcommerce.codeplex.com/releases/view/106146
nopcommerce是國外的一個高質量的開源b2c 網站系統,基于EntityFramework4.0和MVC3.0,使用Razor模板引擎,有很強的插件機制,包括支付配送功能都是通過插件來實現的,基于xml的多語言版本,非常靈活的語言切換功能,包括在后臺都能同時編輯產品的中英文屬性,非常適合做外貿,優秀超前的程序架構,性能也非常強大,自定義的產品名稱和分類又有很好的seo優化。綜合能力遠遠高于國內的一些程序架構糟糕的.net商城程序,是二次開發和大型b2c架構的首選。3.0開始支持多店。

Enterprise Library
https://entlib.codeplex.com/
Enterprise Library for .Net Framework 3.5 – EntLib v4.1 是patterns & practices 小組為.NET Framework 3.5 開發一套企業庫,目前最新版本為v5.0,支持.NET Framework 4.0,共包括9個Application Block,包括數據訪問(Data Access Application Block)、異常管理(Exception Handling Application Block)、數據驗證(Validation Application Block)等等,對企業應用開發非常有幫助,也非常實用。

Autofac
http://autofac.org/
Autofac是一款非常優秀的IOC框架,比較于其他的IOC框架,如Spring.NET,等等之類的,它非常的輕量級且性能上也很卓越。

AutoMapper
https://github.com/AutoMapper/AutoMapper
AutoMapper是一個.NET的對象映射工具。主要用于領域對象與DTO之間的轉換、數據庫查詢結果映射至實體對象。

7-Zip
http://www.7-zip.org/
http://sourceforge.net/projects/sevenzip/postdownload?source=dlp
7-Zip 是一款號稱有著現今最高壓縮比的壓縮軟件,它不僅支持獨有的 7z 文件格式,而且還支持各種其它壓縮文件格式,其中包括 ZIP, RAR, CAB, GZIP, BZIP2和 TAR 等等。此軟件壓縮的壓縮比要比普通 ZIP 文件高 30-50% ,因此,它可以把 Zip 格式的文件再壓縮 2-10% 。
來源:http://www.open-open.com/lib/view/open1393838696333.html
歡迎關注我的公眾號(同步更新文章):DoNet技術分享平臺
閱讀原文

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/272770.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/272770.shtml
英文地址,請注明出處:http://en.pswp.cn/news/272770.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

git初探

1 Linux下Git和GitHub環境的搭建 第一步: 安裝Git,使用命令 “sudo apt-get install git” 第二步: 到GitHub上創建GitHub帳號 第三步: 生成ssh key,使用命令 “ssh-keygen -t rsa -C "your_emailyouremail.com&q…

java編程思想 初始化_《java編程思想》_第五章_初始化與清理

初始化和清理是涉及安全的兩個問題,java中采用了構造器,并額外提供了“垃圾回收器”,對于不再使用的內存資源,垃圾回收器能自動將其釋放。一、用構造器確保初始化java中,通過提供構造器,類的設計者可以確保…

OkHttp 上手

OkHttp 上手 優點 快、節省帶寬。支持 HTTP/2 和 SPDY。HTTP/2 和 SPDY 允許對同一個主機的所有請求,使用一個 socket。如果不支持 SPDY 的話,可以用連接池減少請求等待時間。GZIP 縮小傳輸大小。緩存響應(response ca…

關于Net開發中一些SQLServer性能優化的建議

一、 ExecuteNonQuery和ExecuteScalar 對數據的更新不需要返回結果集,建議使用ExecuteNonQuery。由于不返回結果集可省掉網絡數據傳輸。它僅僅返回受影響的行數。如果只需更新數據用ExecuteNonQuery性能的開銷比較小。 ExecuteScalar它只返回結果集中第一行的第一列…

jstl mysql_java – jsp jstl sql與mysql中的奇怪行為

在mysql中我有一個存儲過程,其中包含一個sql:select firstname as i_firstname , lastname as i_lastname from roleuserwhere user_id uid ;我使用jstl代碼來獲取值: –call sp_select_username(?);${rows.i_firstname} ${rows.i_lastname}但是這個代…

C# 哈希表(Hashtable)用法筆記

一、什么是Hashtable?Hashtable 類代表了一系列基于鍵的哈希代碼組織起來的鍵/值對。它使用鍵來訪問集合中的元素。當您使用鍵訪問元素時,則使用哈希表,而且您可以識別一個有用的鍵值。哈希表中的每一項都有一個鍵/值對。鍵用于訪問集合中的項…

轉: Div與table的區別

1&#xff1a;速度和加載方式方面的區別 div 和 table 的差異不是速度&#xff0c;而是加載方式&#xff0c;速度只能是指網絡速度&#xff0c;如果速度足夠快&#xff0c;是沒有差異的&#xff1a; div 的加載方式是即讀即加載&#xff0c;遇到 <div> 沒有遇到 </div…

你的工作是為了你自己!

1、無論為誰打工&#xff0c;要為自己學東西&#xff0c;客觀為公司創造價值。我自己當年&#xff0c;無論我在方正給國內企業工作&#xff0c;還是我在雅虎給外國人工作&#xff0c;我都跟別人最大的不一樣&#xff0c;我從來不覺得我在給他們打工&#xff0c;我真的可能是很有…

java 無法注入service_SpringBoot集成shiro,MyRealm中無法@Autowired注入Service的問題

網上說了很多諸如是Spring加載順序&#xff0c;shiroFilter在Spring自動裝配bean之前的問題&#xff0c;其實也有可能忽略如下低級錯誤。在ShiroConfiguration中要使用Bean在ApplicationContext注入MyRealm&#xff0c;不能直接new對象。道理和Controller中調用Service一樣&…

python之函數用法startswith()

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之函數用法startswith() #http://www.runoob.com/python/att-string-startswith.html#startswith() #說明&#xff1a;返回布爾值,用于檢查字符串是否是以指定子字符串開頭&#xff0c;如果是則返回 True&#xff0c;否則…

別去取悅,心里沒你的人

鞋子不合適不必硬塞&#xff0c;否則磨了自己的腳&#xff1b;不必討好心里沒你的人&#xff0c;不在乎你的人&#xff0c;你付出再多&#xff0c;也打動不了他。討好心里沒你的人&#xff0c;會讓自己很累很累&#xff1b;總是遷就他&#xff0c;總是圍著他轉&#xff0c;最后…

tensorflow java 加速_Tensorflow使用GPU加速

測試faster-rcnn時&#xff0c;cpu計算速度較慢&#xff0c;調整代碼改為gpu加速運算將 with tf.Session() as sess: 替換為1 gpu_options tf.GPUOptions(per_process_gpu_memory_fraction0.9)2 with tf.Session(configtf.ConfigProto(gpu_optionsgpu_options,log_device_plac…

Install OpenStack Kilo Dashboard wiht Nginx + uWSGI On RHEL7.1

一、安裝Horizon、Nginx、uWSGI yum install -y uwsgi-plugin-python openstack-dashboard uwsgi nginx 二、配置uWSGI cat >/etc/uwsgi.ini <<EOF [uwsgi] plugins python master true processes 10 threads 2 chmod-socket 666socket 127.0.0.1:9000 pidfile …

C#枚舉類型的筆記

一、枚舉類型的概念枚舉類型聲明為一組相關的符號常數定義了一個類型名稱。枚舉用于"多項選擇"場合&#xff0c;就是程序運行時從編譯時已經設定的固定數目的“選擇”中做出決定。枚舉類型&#xff08;也稱為枚舉&#xff09;為定義一組可以賦給變量的命名整數常量提…

java動態打印_JFreeChart學習(三)——動態打印java內存使用情況

JFreeChart動態打印java內存使用情況import java.awt.BasicStroke;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Font;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt…

WPF中StringToImage和BoolToImage簡單用法

在WPF的綁定控件操作中&#xff0c;經常會通過bool值或者某些特定的string值做出相應動作。但UI層控件的很多屬性對應的都不是Bool值或者對應的只是固定的String值。 這個時候有兩方法解決該問題。 1.是在后臺cs中做出比較判斷&#xff0c;然后根據相應結果傳達UI層做出相應動作…

【必備】jQuery性能優化的38個建議

一、注意定義jQuery變量的時候添加var關鍵字這個不僅僅是jQuery&#xff0c;所有javascript開發過程中&#xff0c;都需要注意&#xff0c;請一定不要定義成如下&#xff1a;$loading $(#loading); //這個是全局定義&#xff0c;不知道哪里位置倒霉引用了相同的變量名&#xf…

java中策略設計模式_Java中的設計模式(五):策略模式

策略設計模式是行為設計模式之一。當我們為特定任務使用多個算法時&#xff0c;使用策略模式&#xff0c;客戶端決定在運行時使用的實際實現。策略模式的最佳示例之一是Collections.sort()采用Comparator參數的方法。基于Comparator接口的不同實現&#xff0c;對象將以不同的方…

isset函數

isset (PHP 4, PHP 5) isset — 檢測變量是否設置 檢測變量是否設置&#xff0c;并且不是 NULL。 如果 var 存在并且值不是 NULL 則返回 TRUE&#xff0c;否則返回 FALSE。 $a "test"; $b "anothertest";var_dump(isset($a)); // TRUE var_dump(i…

SQLl中的left join、right join、inner join詳解

left join(左聯接) 返回包括左表中的所有記錄和右表中聯結字段相等的記錄right join(右聯接) 返回包括右表中的所有記錄和左表中聯結字段相等的記錄inner join(等值連接) 只返回兩個表中聯結字段相等的行舉例如下&#xff1a;--------------------------------------------表A記…