自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大开发工具,极小的学习曲线,让我对这个平台产生了浓厚的兴趣,在工作和学习中也积累了一些开源的组件,目前想到的先整理于此,如果再想到,继续补充这篇日志,日积月累,能形成一个自己的组件经验库。
  分布式缓存框架:
  Microsoft Velocity:微软自家分布式缓存服务框架。
  Memcahed:一套分布式的高速缓存系统,目前被许多网站使用以提升网站的访问速度。
  Redis:是一个高性能的KV数据库。 它的出现很大程度补偿了Memcached在某些方面的不足。
  EnyimMemcached:访问Memcached的.NET客户端,集成不错的分布式均衡算法。
  开源的.NET系统推荐:
  OXITE:微软ASP.NET MVC案例演示框架。
  PetShop:微软ASP.NET宠物商店。
  Orchard:国外一个MVC开源的博客系统。
  SSCLI:微软在NET Framework 2.0时代的开源代码。
  DasBlog:国外一个基于ASP.NET的博客系统。
  BlogEngine.NET:国外一款免费开源的博客系统。
  Dotnetnuke.NET:一套非常的基于ASP.NET的开源门户网站程序。
  Discuz.NET:国内开源的论坛社区系统。
  nopCommerce和Aspxcommerce:国外一套高质量的开源B2C网站系统。
  JumboTCMS和DTCMS:国内两款开源的网站管理系统:
  日志记录异常处理:
  Log4Net.dll:轻量级的免费开源.NET日志记录框架。
  Enterprise Library Log Application Black:微软企业库日志记录。
  Elmah:实现流行的ASP.NET应用异常日志记录框架。
  NLog:是一个简单灵活的日志记录类库,性能比Log4Net高,使用和维护难度低。
  关于NoSQL数据库:
  Mongodb:分布式文件存储数据库。
  Membase:家族的一个新的重量级的成员。
  自动任务调度框架
  Quartz.NET:开源的作业调度和自动任务框架。
  Topshelf:另一种创建Windows服务的开源框架
  依赖注入IOC容器框架:
  Unity:微软patterns&practicest团队开发的IOC依赖注入框架,支持AOP横切关注点。
  MEF(Managed Extensibility Framework):是一个用来扩展.NET应用程序的框架,可开发插件系统。
  Spring.NET:依赖注入、面向方面编程(AOP)、数据访问抽象,、以及ASP.NET集成。
  Autofac:流行的依赖注入和IOC框架,轻量且高性能,对项目代码几乎无任何侵入性。
  PostSharp:实现静态AOP横切关注点,使用简单,功能强大,对目标拦截的方法无需任何改动。
  Ninject:基于.NET轻量级开源的依赖注入IOC框架
  常用的几个ORM框架:
  EF(ADO.NET Entity Framework):微软基于ADO.NET开发的ORM框架。
  Nhibernate:面向.NET环境的轻量级的ORM框架。
  SqlMapper.cs:用于小项目的通用的C#数据库访问类。
  AutoMapper:流行的对象映射框架,可减少大量硬编码,很小巧灵活,性能表现也可接受。
  SubSonic:的开源的ORM映射框架,同时提供符合自身需要的代码生成器。
  FluentData:开源的基于Fluent API的链式查询ORM轻量级框架。
  Dapper:轻量级高性能基于EMIT生成的ORM框架。
  EmitMapper:性能较高的ORM框架,运行时通过EMIT动态生成IL代码,并非采用反射机制。
  格式和数据类型转换
  Newtonsoft.Json:目前.NET开发中流行的JSON序列化库,为新版的WebApi库提供基础。
  System.JSON.dll:微软自己开发的JSON序列化组件(需要单独下载)
  DataContractJsonSerializer 和 DataContractXmlSerializer:微软在WCF中使用的序列化器。
  JavaScriptSerializer:微软默认针对WEB开发者提供的JSON格式化器。
  iTextSharp、PDFsharp 和 PDF.NET:通过.NET处理和生成PDF文档的组件。
  SharpZipLib.dll:免费开源的ZIP和GZIP文件解压缩组件。
  Math.NET:强大的数学运算、微积分、解方程和科学运算。
  DocX:不需要安装word软件,通过C#操作word文件。
  SharpSerializer:开源XML和、二进制、JSON、压缩和优化框架。
  反射和动态语言
  Clay dynamic:开源的动态语言dynamic框架让您形如javascript的方式创建对象。
  ExposedObject:在类的外部通过动态语言dynamic的方式访问私有成员。
  PrivateObject:微软单元测试框架中便捷在外部调用类内部私有成员的一个类。
  跨平台和运行时解决方案
  MONO.NET:跨平台的.NET运行环境,让.NET跨平台运行成为可能。
  DotGnu Portable.NET:类似于MONO.NET的跨平台运行时。
  Phalanger:将PHP编译成.NET,可实现PHP与.NET互操作。
  VMDotNet:中国移动飞信所使用过的.NET运行时。
  Unity3D:微软大力支持的机遇C#和JavaScript的跨平台游戏开发框架。
  Cassini、IIS Express和Cassinidev:开源的ASP.NET执行环境。
  Katana:微软基于OWIN规范实现的非IIS寄宿ASP.NET和MVC等。
  IKVM.NET:基于.NET的JAVA虚拟机,让JAVA运行在.NET之上。
  WEB开发和设计
  Jumony Core:基于.NET开发的HTML引擎。
  Microsoft.mshtml.dll、Winista.HtmlParser.dll 和 HtmlAgilityPack.dll:解析处理HTML文档的框架。
  JavaScript.NET和ClearScript(微软出品):基于.NET开发的JavaScript引擎。
  NCrawler:其HTML处理引擎htmlagilitypack的的开源网络爬虫软件。
  AntiXSS:微软官方预防跨站XSS脚本入侵攻击的开源类库,它通过白名单机制进行内容编码。
  YUICompressor.NET、Microsoft Ajax Minifier 和 Google Closure Compiler:JavaScrip和CSS压缩器。
  NancyFx:是一个不错的轻量级开源.NET WEB框架。如果想快速做个简单的WEB应用。
  AspNetPager:国内知名的ASP.NET分页控件,支持多种分页方式。
  NOPI.dll:导出Excel报表的插件(基于微软OpenXml实现)(nopi.css.dl通过css设置样式)
  Enterprise Library:微软针对企业级应用开发的佳实践组件。
  PowerCollections:国外一个牛人写的高级开源集合。
  移动互联网和云计算
  PushSharp:通过.NET向各种移动平台推送消息。
  mono for android:用.NET语言开发安卓应用:
  MonoTouch:用.NET语言开发IOS应用。
  PhoneGap和AppCan:跨平台基于HTML5的移动开发平台。
  Cordova:PhoneGap贡献给Apache后的开源项目,是驱动PhoneGap的核心引擎。