c#现在最好用的ORM是什么框架
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#现在最好用的ORM是什么框架相关的知识,希望对你有一定的参考价值。
SqlSugar 4.x是一款高性能(达到ADO.NET最高性能水平)、轻量级、支持多库和人性化语法的ORM,语法方便,入门简单,功能强大。对数据库结构没太多要求,支持多主键,多自增列
EF强大功能
Dapper一样的性能
最优美的语法
比如某些后台管理系统,业务需求不是很复杂,运行效率要求不高,为了追求开发效率,可以选用EF框架,但是某些开发平台,要求高并发,高效率,就应该选用一些轻量级ORM比如Dapper、Gentel.NET等。当然效率最高的还是原生ODBC,但是工作量最大,不过可以根据自己的需求,稍加封装。本回答被提问者采纳 参考技术B Freesql
Freesql提供了多种使用模式,比如类似EF的dbcontext,linq,比如类似dapper的 conn.Select,再比如直接freesql.Select,还有仓储和工作单元,这些功能都可以在nuget按需引入
最低支持.Net Fx 4.0和.Net Standard 2.0
支持数据库 mysql/Mariadb/SqlServer/PostgreSQL/Oracle/Sqlite/Firebird/达梦/人大金仓/神舟通用/Access
对任意数据库的支持也可以通过nuget来引入需要的provider,有的数据库由于驱动的版本问题(比如mssql有system.data也有microsoft.data,里面有很多坑),提供了对不同版本的provider以适应更多情况。
所以Freesql功能强大,能按需适应更多的场景,适应国产化,对多种数据库提供尽可能多的统一的功能,也提供有些数据库的特色功能支持。性能也完全不输ef core和sugar,也就不需要你在ef、dapper、sqlsugar之间反复横跳了。
相比EF更加适合国人,对多种数据库支持更好更易用,EF -> EF core2.2 -> EF core 3每次变化都太大了,迁移成本高,只有linq to dbcontext模式让很多人还得搭配dapper。
相比SqlSugar这种只有单个模式单个包的,更扩展潜力,支持的数据库也就明显多与sugar,而sugar这种单包的也导致他很难支持更多的数据库,强行支持只会导致要么依赖包过多,要么得自己手动引入依赖包不清楚引入哪个。
从发展潜力来看freesql还在快速的更新迭代,具有良好的单元测试,更具扩展性的分包管理不会出现瓶颈,作者也非常勤奋积极吸取用户意见,趁现在赶紧去提需要的功能吧。
干货 | 10个最好用的PHP框架,请收好~
为什么要使用PHP框架?
10个PHP框架
Laravel于2011年推出,现已成为世界上最流行的免费、开源PHP框架。
为什么?因为它可以安全地处理复杂的web应用程序,速度比其他框架快得多。
Laravel简化了开发过程,简化了常见的任务,比如路由、会话、缓存和身份验证。
-
Laravel适用于开发具有复杂后端需求的应用程序; -
它具有许多特性,可以帮助您定制复杂的应用程序。其中包括:无缝数据迁移、MVC架构支持、安全性、路由、视图模板引擎和身份验证等; -
Laravel的表现力很强,它的速度和安全性符合现代web应用程序的期望。对于想要构建B2B或企业网站的开发人员来说,Laravel是一个不错的选择。
特点:
-
CodeIgniter是一种轻量级、直观的PHP框架,与其他框架不同,它安装起来没有任何麻烦 。 由于简单的设置过程和高度说明的文档,它是初学者的理想选择。 -
关键特性包括MVC架构、一流的错误处理、内置的安全工具以及简单而优秀的文档。此外,它还创建可伸缩的应用程序。 -
与其他框架相比,CodeIgniter要快得多。由于它还提供了可靠的性能,所以当您想要开发轻量级应用程序以在普通服务器上运行时,它是一个不错的选择。
特点:
-
Symfony是开发大型企业项目的理想选择。 在大多数平台上安装和配置都很容易。 -
Symfony的一个关键特征是是可重用的PHP组件。 它还具有数据库引擎独立性,并且稳定,符合大多数web最佳实践和设计模式,并允许与其他供应商库集成。 -
Symfony也非常灵活,可以与Drupal这样的大型项目集成。 Symfony和Laravel有许多共同和独特的特性,这使得很难说哪一个框架更好。
特点:
-
CakePHP简单易用,您只需要一个web服务器和框架的副本就能开始使用。 -
由于其安全特性包括SQL注入预防、输入验证、跨站点请求伪造(CSRF)保护和跨站点脚本编写(XSS)保护,因此它是商业应用程序的良好选择。 -
关键特性包括现代框架、快速构建、适当的类继承、验证和安全性。此外,CakePHP还提供了大量文档、许多支持门户。
特点:
-
Yii有一个简单的安装过程。 此外,其健壮的安全特性使框架适合于高度安全的工作,如电子商务项目、门户、CMS、论坛和许多其他。 -
它具有出色的速度和性能,高度可扩展,并且允许开发人员避免编写重复的SQL语句的复杂性,因为他们可以根据对象对数据库数据建模。 -
Yii拥有一个核心的开发团队和专家,他们为Yii的开发做出了贡献。 有了大量的社区使用它,您可以在Yii论坛上发布问题并获得帮助。 -
Yii具有极强的可扩展性,您几乎可以定制核心代码的每一部分 。然而,如果这是你第一次使用它,准备好一个陡峭的学习曲线。
特点:
-
Zend Framwork非常适合复杂的企业级项目。 它是大型It部门和银行的首选框架。 -
Zend Framwork关键特性包括MVC组件、简单的云API、数据加密和会话管理。 -
Zend Framwork可以与外部库集成,并且只能使用所需的组件。 Zend框架附带了非常好的文档,并且有一个很大的社区基础。然而,如果你是一个移动应用程序开发者,准备好面对一个陡峭的学习曲线。
特点:
-
Phalcon易于安装,适合创建符合企业开发指南的高度可配置的web应用程序。 -
Phalcon主要功能包括提高执行速度、资产管理、通用自动加载程序以及顶级安全性和缓存。 -
与其他框架不同,Phalcon由于其高效的内存利用率优化了性能。如果你想创建一个非常快的网站,那就试试Phalcon吧。 -
不利的一面是,Phalcon开发人员在修补bug方面有点慢,这可能不符合当今对高级别安全性的需求。
特点:
-
基于Swoole本机协同程序,附带一个常驻内存和其他Swoole功能包。 -
Swoft附带Mysql/Redis/Rpc高效连接池和所有连接断开重新连接。开发人员并不关心连接池,并且已经实现了相应的组件。 -
AOP可以用于框架容器管理的所有对象。 使用AOP允许您在不改变实例内部的情况下控制实例对象的行为。 -
RPC服务分为RPC服务器和RPC客户机,框架提供了一种更优雅的方式来使用RPC服务,比如Dubbo。 -
通过Istio/Envoy等服务网格框架,为中小型企业提供了一组快速构建的微服务治理组件,包括服务注册和发现、服务块、服务节流和配置中心。
特点:
-
PHPixie很容易上手,它适用于社交网站、定制web应用程序和web应用程序开发服务。 -
PHPixie关键特性包括HMVC体系结构、标准ORM(对象关系映射)、输入验证、授权功能、身份验证和缓存。 -
PHPixie是使用独立组件构建的 。因此,您可以在不使用框架本身的情况下使用它。注意,PHPixie有相对较少的模块。除此之外,它还缺乏对独立于依赖项的组件的支持。由于它相对较新,所以不太受欢迎,用户社区也比其他框架小。
ThinkPHP是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。
ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进。
-
ThinkPHP在实现MVC架构的同时实现了多层架构,即应用程序在分成模型、视图和控制器的这三层的同时,这三层又可以继续分成多个子层。 -
ThinkPHP所有的操作都通过一个单一的入口文件,默认的入口文件为index.php,用户自己定义并修改为自己的入口文件。入口文件主要用于载入框架入口文件定义定义框架路径、项目路径等。 -
ThinkPHP从3.0版本开始引入了全新的CBD(核心Core+行为Behavior+驱动Driver)架构模式,框架从底层采用核心+行为+驱动的架构体系,核心保留了最关键的部分,并在重要位置设置了标签用以标记。
如何选择?
你还可以看
点个在看再走哇~
以上是关于c#现在最好用的ORM是什么框架的主要内容,如果未能解决你的问题,请参考以下文章