Web 框架(Web Frameworks)
ASP.NET MVC:ASP.NET 是一个免费的 web 框架,用于创建优秀的 web 站点和应用程序。
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
FubuMVC:.NET 平台下前端控制器(front-controller)风格的 MVC 框架。
Fubu代表“For us,by us”。现在FubuMVC除了使用 ASP.NET Routing外,不使用任何ASP.NET MVC的实现代码,而ASP.NET Routing则已经包含在 .NET Framework 3.5 SP1中。
NancyFx:在 .Net 和 Mono 平台上创建 HTTP 服务的一个轻量级、非正式的框架。
Nancy采用一贯的处理方式, 通过一些模块化的组件进行扩充功能,使得更加适合开发一个完整的WEB站点。
Nancy非常适合提供基于自定义路由的静态文件和基于数据的视图(就像ASP.NET MVC),事实上,你甚至可以去定义一个引用的别名或路由来指向已经存在的特定静态文件,而不是动态生成一个。
Suave.IO:一个框架/库/web 服务器,当你看到你使用优美的 F# 编写的代码提前完成了你的项目时,它的存在会让你喜极而泣。
Suave UI 是一个基于 AngularJS 开发的 Web UI 框架,包含 CSS 定义、NG 指令和服务用于快速高效的开发界面。
得益于它提供的各种CSS定义,指令和托管服务,该框架可帮助你轻松高效地创建UI。
ORM框架
Entity Framework:对象关系映射器(ORM)框架,让 .NET 开发人员使用领域特定的对象来处理关系型数据。
Entity Framework 以 Entity Data Model (EDM) 为主,将数据逻辑层切分为三块,分别为 Conceptual Schema, Mapping Schema 与 Storage Schema 三层,其上还有 Entity Client,Object Context 以及 LINQ 可以使用。
FluentMigrator:.net 下的便捷的迁移框架。
迁移是一个使用结构化的方式来改变你的数据库架构,创建大量的必须通过涉及每个开发人员手动运行的 sql 脚本的替代方法。
提供了jQuery式链式编程方式,和3.0后的表达式语法使其语义清晰。主要提供我们队数据库结构的维护,版本控制回滚和新增。适用于 敏捷和TDD实践中我们的需求功能的递增,数据结构增加,可持续化集成,应用场景感觉如其名Fluent(流畅)。
ServiceStack.OrmLite:轻量、简单、快速、基于命名约定的 POCO ORM。
除了基本的增删改查外,还有分页,兼容分页的多表查询,同一业务处理时多次数据库操作仅需要打开一次数据库,反射对象映射赋值,分页返回集合的json封装函数,自定义对象,NLOG日志记录,前端H 框架,sweetalert、Sortable、layer、swal等各种效果插件.....。
通讯框架(Communication Frameworks)。
DotNetty:一个快速开发高性能、高可靠性的非阻塞的事件驱动网络应用框架DotNetty.Common 是公共的类库项目,包装线程池,并行任务和常用帮助类的封装。
DotNetty.Transport 是DotNetty核心的实现。
DotNetty.Buffers 是对内存缓冲区管理的封装。
DotNetty.Codes 是对编解码是封装,包括一些基础基类的实现,我们在项目中自定义的协议,都要继承该项目的特定基类和实现。
DotNetty.Handlers 封装了常用的管道处理器,比如Tls编解码,超时机制,心跳检查,日志等,如果项目中没有用到可以不引用,不过一般都会用到。
其他还有对Redis的编解码,Mqtt的编解码,Protobuf2/3的编解码项目中可根据实际情况引用。
很遗憾Http协议和WebSocket协议还没有实现。
Helios:一套高性能的Socket通信中间件。
Helios是一套高性能的Socket通信中间件,使用C#编写。Helios的开发受到Netty的启发,使用非阻塞的事件驱动模型架构来实现高并发高吞吐量。Helios为我们大大的简化了Socket编程,它已经为我们处理好了高并发情况下的解包,粘包,buffer管理等等。