[置顶]这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧

简介:
注意:有网友提出部分项目停止更新的事情,这个问题我特意注意过,很多都是小功能组件,功能稳定,没有bug,没更新是正常的。够用就行了。其次技术支持的事情,对开源免费来说,不能太强求,这里发布的都是小功能组件,一般看源码也比较好理解,各取所需。当然有最好。。

  长期关注和使用.NET开源项目,给我带来了很多好处:

1.可以快速完成我的想法,也就是所谓的业务细节,而不是关注如何实现;

2.可以更快更稳定的完成需求,而不是自己造轮子实现,花费时间;

3.从.NET开源项目的使用以及源码阅读中也会带来一些好处;

       实际上并不是说造轮子不好,而是本来技术功底和专业水平就不够,实在造不了。所以感谢开源社区,感谢C#,感谢那些参与和共享开源项目代码的人,有了你们,我才进步更快。08年比较正式开始接触C#,并用来完成研究生阶段所需要的任务以来,接触过很多开源项目,特别是经常去Codeplex,CodeProject,以及现在更加流行的github。上个月发表了一篇关于.NET平台开源的机器学习组件文章:,非常受欢迎。所以特意把自己这些年发现的一些项目总结出来,献给大家。

      现在微软对开源态度越来越明确,动作越来越大,所以让我们更加关注.NET平台的开源项目。考虑到类似的汇总很多,所以我并没有列出一些常见的,而是列出一些不常见的。如果和部分文章有重合,纯属偶尔。以下排名不分先后,都是功能性质,大家收藏保留备用吧。另外部分开源项目的使用和介绍我将通过博客专题发布,将选择几个比较通用的组件,每一篇介绍其功能和基本使用,请大家关注博客的动态。

    本文原文地址:这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧

    这次先整理出15个个人认为比较好的项目。后面有时间还整理出15个左右。主要是每一次碰到了都往收藏夹里面塞。。。现在收藏夹都成这个样子了(缩略图,点击放大):

  所以原谅我,不能把所有的都发上来,太杂了,反而不好。

1..NET时间周期处理组件

    这个组件很小,主要是对时间日期,特别是处理时间间隔以及时间范围非常方便。虽然.NET自带了时间日期的部分功能,但可能还不强大。这个组件就是增强版本。详细功能可以看项目主页的介绍。在CodeProject:

    http://www.codeproject.com/Articles/168662/Time-Period-Library-for-NET

2.OxyPlot绘图组件

    OxyPlot是一个.NET跨平台的绘图组件,关注很久,但还没用过,以前用的是ZedGraph,感觉是丑了点,但当时不知道OxyPlot。微软从.NET 3.5开始也提供了一个绘图控件MS Chart,也比较好用。这个组件从外观上来说,更加简洁,所以实现也应该更加简单,大家看看可以用在什么场合。看看这个图是不是很清爽。。。  

    官方网站:http://oxyplot.org/

3..NET平台CAD建模组件AnyCAD

    对我来说,用.NET来操作CAD文件是一个多么可怕和充满幻想的事情,但直到一次偶然的机会碰到它了,也改变了我的想法。当然这个组件是有商业的,也有免费版本。对普通用户来说,非常棒,虽然可能大部分人用不上,但收藏一下,备用吧,没准那天就要用了。

    官方网站:http://www.anycad.net/

4.SharpConfig配置文件操作组件

    SharpConfig是一个使用非常简单,功能单一但强劲的开源.NET类库。让复杂的配置文件操作变得和操作对象一样简单,是不是很有趣。关于这个组件我会单独写一篇使用和介绍的问题,因为的确很诱人。看个截图:  

    官方网站:http://sharpconfig.codeplex.com/

5.MailSystem.NET邮件组件

    MailSystem是一个.NET平台开源的邮件处理组件,支持SMTP, POP3, IMAP4, NNTP, MIME, S/MIME, OpenPGP, DNS, vCard, vCalendar, 反垃圾邮件,查询合并等功能。如果要在非GPLv3软件使用,必须获得商业许可。

   官方网站:http://mailsystem.codeplex.com/

6.Compare .NET Objects对象比较组件

    这个组件的主要功能如名字所示就是深入比较2个.NET对象,是否相等或者是否有差异。可能很多.NET对象实现了一些.NET自带的接口可以直接进行比较,但是这个组件比较的范围和功能更加广泛。例如:

    可以比较默认的子节点;

    可以比较结构体;

    可以比较IList对象;

    可以比较单维或者多维的数组对象;

    可以比较枚举类型;

    可以比较IDictionary对象;

    可以比较数据集,数据表,字典等等;

    可以比较私有字段或者属性等等。。。

    还有很多,不一一列举,可以去官网详细了解。

    官方网站:http://comparenetobjects.codeplex.com/

7.Security Library安全组件

    这是一个.NET平台安全相关的开源组件,由于这方面个人了解比较少,没有深入研究,目前支持SSL和TLS,证书管理,以及加密转换。

    官方网站:http://www.mentalis.org/soft/projects/seclib/

8.NLocalizer本地化多语言组件

    多语言,本地化是很多人研究过的,也许都有自己的解决方案。这个NLocalizer目的就是方便.NET的开发者可以快速构建多语言的软件,使用也很简单。官方提供了一个案例,可以直接获取现有Winform项目所有的控件的值,进行编辑即可实现多语言。

    官方网站:http://nlocalizer.codeplex.com/

9.PhysicalMeasure计量单位组件

    PhysicalMeasure项目是一个物理单位和计量系统,支持不同计量单位间的转换。虽然这个东西很少有人用到,不过还真碰到过有一个朋友做类似的东西。这个东西虽然想起来简单,但实际做起来还是比较费劲的,主要是做全面和稳定。所以平时见得多了,有时候碰到需求了,思路就来了,再就是多看看新闻,看看别人的经验的好处。

    官方网站:http://physicalmeasure.codeplex.com/

10.Database Schema Reader

    Database Schema Reader是一个开源的数据库架构获取个工具。很多多ORM或者代码生成的人可能会用到。对于支持多种数据库的ORM是比较有用的,当然其他用途也有,比如生成数据库字典文档之类的。。。大家尽情发挥好了。目前支持的数据库非常广泛,例如:SqlServer, SqlServer CE 4, MySQL, SQLite, System.Data.OracleClient, ODP, Devart, PostgreSql, DB2等等。

    官方网站:http://dbschemareader.codeplex.com/

11.SDS:面向科学数据集的组件工具

    SDS(Scientific DataSet library and tools)是一个面向.net开发人员读取和共享各种科学数据的工具,支持 CSV, NetCDF 以及其他文件格式。

    官方网站:http://sds.codeplex.com/

12.LiteDB文件数据库-NoSQL

  LiteDB是一个小型的.NET平台开源的NoSQL类型的轻量级文件数据库。特点是小和快,dll文件只有200K大小,而且支持LINQ和命令行操作,数据库是一个单一文件,类似Sqlite,其他功能就细说了。有空看官网文件,这个数据库我会写一篇介绍和使用文章。

  官方网站:http://www.litedb.org/

13.CSharpCompiler

  CSharpCompiler是一个.NET平台开源免费的在程序员中编译C#源代码的组件,可以做的事情很多,例如用它来实现C#写脚本。。。。以及用来创建自己的C# IDE编辑器等等。例如官方的一个例子:  

  

  官方网站:http://csharpcompiler.codeplex.com/

14.博易博客

  博易博客是一款免费、开源的博客系统。它是基于 BlogEngine.NET 进行中文本地化,并将其努力在中国进行推广和应用。遵循 W3C 标准,具有极强的可扩展性、高性能、良好的 SEO 性能和非凡的用户体验。想自己搭建博客的朋友,这是一个不错的选择。如下图是一个风格的博客界面:  

  BlogEngine.NET官方网站:http://www.dotnetblogengine.net/

  官方网站:http://wangxianyuan.com/blogengine/

15.小泥鳅博客系统

  小泥鳅博客系统也是一个.NET平台的开源免费博客系统,创建于2008年夏天,基于.Net平台开发,拥有完整的文章发布,评论,订阅,标签等功能,满足个人/团队信息发布需求,可作为Blog,CMS,甚至建企业站。有灵活的模板机制,可以自定义关键字,自定义Url,SEO 优化,完美支持离线写作。如:Windows Live Writer(推荐)(教程),Office Word 2007,支持包括RSS订阅,评论订阅,多种性质的邮件订阅等。这个项目可以作为学习使用,参考了不少开源组件。  

  官方网站:http://www.loachs.com/

  今天就到此为止,欲知后事如何,请听下回分解。。。剩下的,朋友们,狂点赞吧。。。。

相关文章
|
5天前
|
Linux C# Android开发
一个开源、跨平台的.NET UI框架 - Avalonia UI
一个开源、跨平台的.NET UI框架 - Avalonia UI
|
5天前
|
前端开发 关系型数据库 MySQL
ThingsGateway:一款基于.NET8开源的跨平台高性能边缘采集网关
ThingsGateway:一款基于.NET8开源的跨平台高性能边缘采集网关
|
5天前
|
机器学习/深度学习 人工智能 算法
ML.NET:一个.NET开源、免费、跨平台的机器学习框架
ML.NET:一个.NET开源、免费、跨平台的机器学习框架
|
5天前
|
API C# Windows
一个.NET开源、现代、轻量级的文本编辑器
一个.NET开源、现代、轻量级的文本编辑器
|
5天前
|
消息中间件 开发框架 前端开发
YuebonCore:基于.NET8开源、免费的权限管理及快速开发框架
YuebonCore:基于.NET8开源、免费的权限管理及快速开发框架
|
15天前
|
开发者
.NET生态的开源宝藏:探索参与开源项目的秘密路径与丰厚回报
【8月更文挑战第28天】本文介绍了.NET生态系统中开源项目的重要性和参与方法。.NET开源项目涵盖基础库到高级框架,促进技术交流与创新。参与项目可提升技能、建立品牌,并获得职业网络。选择合适项目需考虑兴趣、活跃度和难度。贡献流程包括了解项目、设置环境、查找问题和提交代码。开发者还可通过使用开源库、学习最佳实践和获得社区支持来受益。此外,有能力的开发者也可尝试维护自己的开源项目。希望本文能帮助更多.NET开发者参与开源项目。
28 5
|
5天前
|
网络协议 C#
NSmartProxy:一款.NET开源、跨平台的内网穿透工具
NSmartProxy:一款.NET开源、跨平台的内网穿透工具
|
1月前
|
开发框架 JavaScript 前端开发
提升生产力:8个.NET开源且功能强大的快速开发框架
提升生产力:8个.NET开源且功能强大的快速开发框架
|
1月前
|
C#
一款.NET开源、跨平台的DASH/HLS/MSS下载工具
一款.NET开源、跨平台的DASH/HLS/MSS下载工具
|
1月前
|
SQL Oracle 关系型数据库
.NET 开源快捷的数据库文档查询和生成工具
【8月更文挑战第1天】推荐几款.NET开源数据库文档工具:1. DBDocumentor,支持多类型数据库,快速生成详尽文档;2. SqlDoc,界面简洁,自定义内容与格式;3. DBInfo,强大查询功能,支持多种导出格式。这些工具有效提升文档管理效率与质量。