转:高效实用的.NET开源项目
本文转自:http://www.cnblogs.com/pengze0902/p/7669631.html
似乎...很久很久没有写博客了,一直都想写两篇,但是却没有时间写。感觉最近有很多事情需要处理,一直都是疲于奔命,一直到最近才变得有些时间学习和充电。最近没有事情都会看一些博客和开源项目,发现介绍开源项目的文章似乎有些旧,而且很多介绍开源项目的文章都有比较相似的地方,毕竟.NET很好很实用的项目的确有限。
很多人也想了解一下最新和感觉有用的.NET开源项目,但是又没有时间去GitHub去逐一的看。感觉自己没事就花了几个小时,去GitHub看了搜索到的1000个项目,个人觉得比较实用的项目就自己做了一个整理。(备注:很多比较新的和比较厉害的组件和项目没有写入,因为很多文章都已经介绍过了,而且很多人也使用了,所以就没有怎么介绍)
最近忙着在做“在线协议”的方案,整个方案都实现,但是却陷入一个坑爹的场景,那就是在线协议需要借用UE对粘贴的文档进行转换为HTML,但是原始文档的格式很容易出现问题,导致生成的HTML标记也会产生问题,已至后面的正式的协议PDF文件和World文件都会失真,想看看大家有没有好的意见。(后面我会将目前的实现方案写出来分享)
1.Akka.NET:
概述:更轻松地构建强大的并发和分布式应用。
简介:Akka.NET是一个用于在.NET和Mono上构建高度并发,分布式和容错的事件驱动应用程序的工具包和运行时。
开源地址:https://github.com/akkadotnet/akka.net
2.Topshelf:
概述:使用.NET构建Windows服务的简单服务托管框架。
简介:Topshelf是托管使用.NET框架编写的服务的框架。服务的创建被简化,允许开发人员创建一个简单的控制台应用程序,可以使用Topshelf作为服务安装。原因很简单:调试控制台应用程序比服务容易得多。一旦应用程序经过测试并可以进行生产,Topshelf可以轻松安装应用程序作为服务。
开源地址:https://github.com/Topshelf/Topshelf
3.IdentityServer3:
概述:OpenID Connect Provider和用于ASP.NET 4.x / Katana的OAuth 2.0授权服务器框架。
简介:IdentityServer是一个基于.NET / Katana的框架和可托管组件,允许使用OpenID Connect和OAuth2等协议实现对现代Web应用程序和API的单一登录和访问控制。它支持广泛的客户端,如移动,Web,SPA和桌面应用程序,并且是可扩展的,可以集成到新的和现有的架构中。
开源地址:https://github.com/IdentityServer/IdentityServer3
4.MediatR:
概述:在.NET中简单的中介器实现。
简介:进程内消息传递,无依赖关系。支持请求/响应,命令,查询,通知和事件,通过C#通用方差进行智能调度的同步和异步。
开源地址:https://github.com/jbogard/MediatR
5.MassTransit:
概述:.NET的分布式应用程序框架。
简介:MassTransit可以轻松创建应用和服务,利用基于消息的松散耦合的异步通信,实现更高的可用性,可靠性和可扩展性。
开源地址:https://github.com/MassTransit/MassTransit
6.microdot:
概述:一个开源的.NET微服务框架。
简介:Microdot框架可帮助您创建可扩展和可靠的微服务(“微服务机架”),让您专注于编写定义服务逻辑的代码,而无需解决开发分布式系统的无数挑战。Microdot还可以很好地与 Orleans虚拟演员框架相结合,让您轻松地编写基于 Orleans微型服务。
开源地址:https://github.com/gigya/microdot
7.Docker.DotNet:
概述:用于Docker API的.NET(C#)客户端库。
简介:与 .NET应用程序中的Docker Remote API端点进行交互。它是完全异步的,旨在以非阻塞和面向对象的方式通过编程方式与Docker守护程序进行交互。
开源地址:https://github.com/Microsoft/Docker.DotNet
8.Z.ExtensionMethods:
概述:C#扩展方法| .NET开源和免费库
简介:通过超过1000种扩展方法增强.NET Framework。
开源地址:https://github.com/zzzprojects/Z.ExtensionMethods
9.SuperWebSocket:
概述:SuperWebSocket是WebSocket服务器的.NET实现。
简介:WebSocket是通过单个传输控制协议(TCP)插座提供双向,全双工通信信道的技术。它被设计为在Web浏览器和Web服务器中实现,但它可以被任何客户端或服务器应用程序使用。SuperWebSocket被合并到SuperSocket作为附加模块SuperSocket.WebSocket。您可以使用SuperSocket.WebSocket用相同的方式SuperWebSocket但有不同的命名空间。
开源地址:https://github.com/kerryjiang/SuperWebSocket
10.Seal-Report:
概述:开放数据库报表工具(.Net)
简介:Seal-Report提供了一个完整的框架,用于从任何数据库生成日常报告和仪表板。Seal-Report是Microsoft .NET Framework完全用C#编写的开源工具。
开源地址:https://github.com/ariacom/Seal-Report
11.accord-net-extensions:
概述:先进的图像处理和计算机视觉算法作为流畅的扩展而构建为可移植性。
简介:Accord.NET Extensions是Accord.NET和AForge.NET的扩展框架。框架集中将.NET本地数组作为主要成像对象,并提供大多数构建为扩展的计算机视觉算法。
开源地址:https://github.com/dajuric/accord-net-extensions
12.MediaToolkit:
概述:用于转换和处理所有视频和音频文件的.NET库。
简介:MediaToolkit为处理媒体数据提供了一个简单的界面,完成了轻松转换,切片和编辑音频和视频等任务。在引擎盖下,MediaToolkit是一个用于FFmpeg的.NET包装器; 一个包含多个音频和视频编解码器的免费(LGPLv2.1)多媒体框架,支持多种媒体格式的多路复用,解复用和转码任务。(从视频抓住缩略图,检索元数据,基本转换,将Flash视频转换为DVD,转码选项FLV到MP4,将视频缩小到较小的长度)
开源地址:https://github.com/AydinAdn/MediaToolkit
13.htmldiff.net:
概述:.NET的Html Diff算法。
简介:用于比较两个HTML文件/片段的库,并使用简单的HTML突出显示差异。这个HTML Diff实现是在这里找到的ruby实现的C#端口。
开源地址:https://github.com/Rohland/htmldiff.net
14.CalbucciLib.ExtensionsGalore:
概述:.NET中内置类型和类的扩展的100个扩展。
简介:ExtensionsGalore是一个库,可以扩展.NET的许多常见类型和类别,以便快速方便地访问Web和移动开发的常见场景。换句话说,它可以帮助您编写更少的代码行,并将更多的焦点集中在应用程序中。
开源地址:https://github.com/calbucci/CalbucciLib.ExtensionsGalore
15.Dapper:
概述:Dapper - 一个简单的对象映射器.Net
简介:Dapper的一个关键特性是性能。
开源地址:https://github.com/StackExchange/Dapper
16.FluentValidation:
概述:.NET的一个小型验证库,它使用流畅的界面和lambda表达式来构建验证规则。
简介:.NET的一个小型验证库,它使用流畅的界面和lambda表达式来构建验证规则。由Jeremy Skinner(http://www.jeremyskinner.co.uk)撰写,并在Apache 2下授权。
开源地址:https://github.com/JeremySkinner/FluentValidation
17.Accord.NET Framework:
概述:机器学习,计算机视觉,统计学和.NET的一般科学计算。
简介:Accord.NET项目为.NET提供机器学习,统计,人工智能,计算机视觉和图像处理方法。它可以在Microsoft Windows,Xamarin,Unity3D,Windows Store应用程序,Linux或移动设备上使用。在与AForge.NET项目合并之后,该框架现在提供了一个用于学习/训练机器学习模型的统一API,其易于使用和可扩展。
开源地址:https://github.com/accord-net/framework
18.Lucene.Net:
概述:Apache Lucene.Net镜像
简介:Apache Lucene.Net是一个.NET全文搜索引擎框架,是流行的Apache Lucene项目的C#端口。Apache Lucene.Net不是一个完整的应用程序,而是一个可以轻松地用于向应用程序添加搜索功能的代码库和API。
开源地址:https://github.com/apache/lucenenet
19.CommonMark.NET:
概述:在C#中实现CommonMark规范,将Markdown文档转换为HTML。针对最大的性能和可移植性进行了优化。
简介:在C#中实现CommonMark规范(通过0.27版的测试)将Markdown文档转换为HTML。
开源地址:https://github.com/Knagis/CommonMark.NET
20.WebApiThrottle:
概述:用于IIS和Owin托管的ASP.NET Web API速率限制器。
简介:ASP.NET Web API调节处理程序,OWIN中间件和过滤器旨在根据IP地址,客户端API密钥和请求路由来控制客户端对Web API的请求速率。(基于IP的全局调节,基于IP的端点限制,端点限制基于IP和客户端密钥,IP和/或客户端密钥白名单,IP和/或客户端密钥自 定义速率限制,端点自定义速率限制,堆栈拒绝请求,在web.config或app.config中定义速率限制,检索API客户端密钥,存储油门指标,运行时更新速率限制,记录限制的请求,基于属性的速率限制与ThrottlingFilter和EnableThrottlingAttribute,速度限制与ThrottlingMiddleware,自定义ip地址解析)
开源地址:https://github.com/stefanprodan/WebApiThrottle
以上只是简单的介绍了一些开源项目,后面如果有时间和精力,会写一些组件和开源项目的介绍,如果大家也有觉得比较好的项目,也可以在博客下面留言分享,让大家一起学习。
21.其他:
https://github.com/sindresorhus/awesome
.NET
https://github.com/quozd/awesome-dotnet
https://github.com/thangchung/awesome-dotnet-core
https://gitee.com/lishilei0523/S.D.Framework2015
https://github.com/slimjack/IWC
js跨页面通信
转:高效实用的.NET开源项目的更多相关文章
- 你真的了解字典(Dictionary)吗? C# Memory Cache 踩坑记录 .net 泛型 结构化CSS设计思维 WinForm POST上传与后台接收 高效实用的.NET开源项目 .net 笔试面试总结(3) .net 笔试面试总结(2) 依赖注入 C# RSA 加密 C#与Java AES 加密解密
你真的了解字典(Dictionary)吗? 从一道亲身经历的面试题说起 半年前,我参加我现在所在公司的面试,面试官给了一道题,说有一个Y形的链表,知道起始节点,找出交叉节点.为了便于描述,我把上面 ...
- 高效实用的.NET开源项目
似乎...很久很久没有写博客了,一直都想写两篇,但是却没有时间写.感觉最近有很多事情需要处理,一直都是疲于奔命,一直到最近才变得有些时间学习和充电.最近没有事情都会看一些博客和开源项目,发现介绍开源项 ...
- 众包高效实用的.NET开源项目
1.Akka.NET: 概述:更轻松地构建强大的并发和分布式应用. 简介:Akka.NET是一个用于在.NET和Mono上构建高度并发,分布式和容错的事件驱动应用程序的工具包和运行时. 开源地址:ht ...
- GitHub上易于高效开发的Android开源项目TOP20--适合新手
1. android-async-http android-async-http是Android上的一个异步.基于回调的HTTP客户端开发包,建立在Apache的HttpClient库上. 2. an ...
- DIOCP开源项目-高效稳定的服务端解决方案(DIOCP + 无锁队列 + ZeroMQ + QWorkers) 出炉了
[概述] 自从上次发布了[DIOCP开源项目-利用队列+0MQ+多进程逻辑处理,搭建稳定,高效,分布式的服务端]文章后,得到了很多朋友的支持和肯定.这加大了我的开发动力,经过几个晚上的熬夜,终于在昨天 ...
- 百度DMLC分布式深度机器学习开源项目(简称“深盟”)上线了如xgboost(速度快效果好的Boosting模型)、CXXNET(极致的C++深度学习库)、Minerva(高效灵活的并行深度学习引擎)以及Parameter Server(一小时训练600T数据)等产品,在语音识别、OCR识别、人脸识别以及计算效率提升上发布了多个成熟产品。
百度为何开源深度机器学习平台? 有一系列领先优势的百度却选择开源其深度机器学习平台,为何交底自己的核心技术?深思之下,却是在面对业界无奈时的远见之举. 5月20日,百度在github上开源了其 ...
- Android非常实用的开源项目框架
我将文章中所描述的项目都集成在一个apk中,可以直接运行查看效果,2.2以上的机器都可以运行.因为不让直接上传apk文件,我压缩成了zip包 1. Universal-Image-Loader 实现异 ...
- python实战===国内很简单实用的一些开源的api以及开源项目
原创 2017年03月25日 15:40:59 标签: api / 开源项目 / app / 免费接口 声明 以下所有 API 均由产品公司自身提供,本人皆从网络获取.获取与共享之行为或有侵犯产品 ...
- 如何高效地在github上找开源项目学习?
1.高级条件组合(精确搜索) in:readme 微服务 stars:>1000 in:readme spring security stars:>3000 in:name python ...
随机推荐
- ResultEntity
就是封装的一个map集合 省时省力好用 package com.ujy.utils; import java.util.HashMap; import java.util.Map; public c ...
- nodejs 操作 mysql
1.安装插件 npm install mysql 2.调用代码 var mysql = require('mysql') var connection = mysql.createConnection ...
- java Character类源码分析
一.使用 构建Character对象: public class CharTest { public static void main(String[] args) { Character c1 = ...
- 常用windbg命令(转)
1.查看版本信息:version.vertarget. 2.查看模块信息:lm.!dlls.!lmvi等. 3.调用栈:用k命令显示调用栈,用.frames命令切换栈帧. 4.内存操作:读内存用d命令 ...
- Attention Points
Attention Points 数组范围 无向图.树,边表的范围是边数的两倍. 因为最近树的题目做的比较多,一定要注意分清是树还是图,不能冲上去就去开struct Edge{int to,ne,w; ...
- IO流一
1 Java IO原理 I/O是input/output的缩写,IO技术是非常实用的技术,用于处理设备之间的数据传输.如读写文件,网络通讯等. Java程序中,对于数据的输入输出操作以“流Stream ...
- Django【第9篇】:Django之用户认证auth模块
用户认证--------------auth模块 一.auth模块 from django.contrib import auth 1 .authenticate() :验证用户输入的用户名和密码 ...
- Django【第11篇】:Django之分页升级版本(组件)
分页组件 一.分页的实现与使用 class Pagination(object): """ 自定义分页 """ def __init__(s ...
- js原生高逼格插件
如何定义一个高逼格的原生JS插件 作为一个前端er,如果不会写一个小插件,都不好意思说自己是混前端界的.写还不能依赖jquery之类的工具库,否则装得不够高端.那么,如何才能装起来让自己看起来逼格更高 ...
- 【GDOI2014模拟】网格
题目 某城市的街道呈网格状,左下角坐标为A(0, 0),右上角坐标为B(n, m),其中n >= m.现在从A(0, 0)点出发,只能沿着街道向正右方或者正上方行走,且不能经过图示中直线左上方的 ...