高效实用的.NET开源项目

      似乎...很久很久没有写文章了,一直都想写两篇,但是却没有时间写。感觉最近有很多事情需要处理,一直都是疲于奔命,一直到最近才变得有些时间学习和充电。最近没有事情都会看一些文章和开源项目,发现介绍开源项目的文章似乎有些旧,而且很多介绍开源项目的文章都有比较相似的地方,毕竟.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

    以上只是简单的介绍了一些开源项目,后面如果有时间和精力,会写一些组件和开源项目的介绍,如果大家也有觉得比较好的项目,也可以在文章下面留言分享,让大家一起学习。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大魏分享(微信公众号:david-share)

后容器时代技术制高点:API管理平台3Scale的架构设计与部署

6012
来自专栏Jerry的SAP技术分享

SAP云平台,Netweaver,Kubernetes和C4C的用户和角色关系

Kubernetes在1.3版本中发布了alpha版的基于角色的访问控制(Role-based Access Control,

722
来自专栏Samego开发资源

ubuntu如何修复引导

3644
来自专栏张善友的专栏

.NET开源OpenID和OAuth解决方案Thinktecture IdentityServer

现代的应用程序看起来像这样: ? 典型的交互操作包括: 浏览器与 web 应用程序进行通信 Web 应用程序与 web Api (有时是在他们自己的有时代表用户...

2369
来自专栏程序员互动联盟

计算机的启动过程(详细)

对于使用电脑用户来说,打开电源启动电脑几乎是每天必做的事情,但计算机在显示这些启动画面的时候都在做什么呢?大多数用户都未必清楚。 下面就向大家介绍一下从打开电源...

2855
来自专栏技术翻译

如何在DC / OS上构建高度可扩展的物联网平台

我最近一直在使用新的Percona-Server-MongoDB DC / OS服务,作为这项工作的一部分,我决定尝试使用Percona-Server-Mong...

1274
来自专栏格子的个人博客

vSphere Hypervisor 6.5 虚拟机创建和操作系统安装

在上一篇博客中,介绍了vSphere Hypervisor 6.5的安装过程:包括镜像下载、定制和安装以及部分问题解决,一路磕磕碰碰,最终也算是把vSphere...

993
来自专栏Debian社区

Kubernetes 1.7 发布,安全强化、StatefulSet 更新及可扩展特性

Kubernetes 1.7已经发布,该版本聚焦于安全、存储和扩展性等交付特性,其中包括Network Policy API、StatefulSets自动升级策...

642
来自专栏deed博客

安卓SDK镜像

1834
来自专栏老付的网络博客

docker 入门与安装

Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括...

701

扫码关注云+社区