首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

.NET(C#)有哪些主流的ORM框架,SqlSugar,Dapper,EF还是...

.NET(C#)主流ORM总揽 今天这篇文章分享几款收集的目前.NET(C#)中比较流行的ORM框架,比如(以下框架均为开源框架,托管于github上): SqlSugar (国内) Dos.ORM (...PetaPoco:轻量的POCO对象和数据库映射的ORM框架。...特点: 开源、免费 推荐等级:★★★★☆ linq2db linq2db也是一款快速、轻量、类型安全的POCO对象和数据库映射的ORM框架。...构架上来说,linq2db是对比如:Dapper、PetaPoco这个的微ORM的进一步封装,但它不像Entity Framework那样笨重。它没有实现状态跟踪,需要自己处理实体的状态更改等。...该框架曾经为.NET Framework的一部分,但version 6之后.NET Framework分离出来。

7.9K90

盘点 .NET 比较流行的开源的ORM框架

支持 Join 查询、Union all 、Subquery 支持配置查询 支持 DbFirst 数据库导入实体类,或使用生成工具。...EF有三种使用场景: 1、数据库生成Class。 2、由实体类生成数据库表结构。 3、通过数据库可视化设计器设计数据库,同时生成实体类。...(国外) LINQ to DB 是最快的 LINQ 数据库访问库,在 POCO 对象和数据库之间提供了一个简单、轻量、快速且类型安全的层。...更好的参数替换支持,包括对象属性中获取命名参数。 通过使用 DynamicMethod 生成消除 Linq 和快速属性分配来获得出色的性能。 查询语言是好的 ole SQL。...包括 T4 模板以自动为您生成 POCO 类。(V5) 用于记录异常、安装值转换器和将列映射到没有属性的属性的挂钩。

3.9K41
您找到你想要的搜索结果了吗?
是的
没有找到

2022年了有哪些值得推荐的.NET ORM框架?

主要特点: 支持 CodeFirst 模式,即便使用 Access 数据库也支持数据迁移; 支持 DbFirst 模式,支持数据库导入实体类,或使用实体类生成工具生成实体类; 支持 深入的类型映射,比如...与SubSonic一样,它支持使用 T4 模板生成 poco 类(仅限 V5)。 与Massive一样,它以单个文件的形式提供,您可以轻松地将其添加到任何项目或编译(仅限 V5)。...linq2db LINQ to DB 是最快的LINQ数据库访问库,在POCO对象和数据库之间提供了一个简单、轻量、快速且类型安全的层。...文档地址:https://linq2db.github.io/  GitHub地址:https://github.com/linq2db/linq2db RepoDb RepoDB 是一个开源的 .NET...SQL 并干净地映射到断开连接和数据传输对象 (DTO) 友好、普通的旧C# 对象 (POCO)。

5.8K11

2022年了有哪些值得推荐的.NET ORM框架?

主要特点: 支持 CodeFirst 模式,即便使用 Access 数据库也支持数据迁移; 支持 DbFirst 模式,支持数据库导入实体类,或使用实体类生成工具生成实体类; 支持 深入的类型映射...与SubSonic一样,它支持使用 T4 模板生成 poco 类(仅限 V5)。 与Massive一样,它以单个文件的形式提供,您可以轻松地将其添加到任何项目或编译(仅限 V5)。...linq2db LINQ to DB 是最快的LINQ数据库访问库,在POCO对象和数据库之间提供了一个简单、轻量、快速且类型安全的层。...文档地址:https://linq2db.github.io/  GitHub地址:https://github.com/linq2db/linq2db RepoDb RepoDB 是一个开源的 ....SQL 并干净地映射到断开连接和数据传输对象 (DTO) 友好、普通的旧C# 对象 (POCO)。

3.8K20

DB笔试面试494】Oracle中哪个包用于生成随机值?

题目部分 在Oracle中,Oracle中哪个包用于生成随机值? 答案部分 DBMS_RANDOM是一个可以生成随机数值或者随机字符串的程序包。...这个包有INITIALIZE()、SEED()、TERMINATE()、VALUE()、NORMAL()、RANDOM()、STRING()等几个函数,它们提供了内置的随机数生成器,可以用于快速生成随机数...1、DBMS_RANDOM.VALUE方法 VALUE()是最常用的方法,它的用法一般有两种:第一种用法没有参数,会返回一个具有38位精度的数值,范围0.0到1.0,但不包括1.0。...2、DBMS_RANDOM.STRING方法 DBMS_RANDOM.STRING可以用来生成随机字符串,如下所示: SELECT ROUND(DBMS_RANDOM.VALUE(0, 10)) COL...本文选自《Oracle程序员面试笔试宝典》,作者:李华荣。

60110

DB笔试面试608】在Oracle中,如何使用STA来生成SQL Profile?

♣ 题目部分 在Oracle中,如何使用STA来生成SQL Profile? ♣ 答案部分 利用STA对语句进行优化后,STA会对语句进行分析,采用最优的优化策略,并给出优化后的查询计划。...这个时候就可以利用Sql Profile,将优化策略存储在Profile中,Oracle在构建这条语句的查询计划时,就不会使用已有相关统计数据,而使用Profile的策略,生成新的查询计划。...第一步:给用户赋权限 [ZHLHRSPMDB2:oracle]:/oracle>sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production...roundtrips to/from client 0 sorts (memory) 0 sorts (disk) 1 rows processed NOTE...本文选自《Oracle程序员面试笔试宝典》,作者:李华荣。

2.6K20

DB笔试面试797】在Oracle中,可以exp出来的dmp文件获取哪些信息?

♣ 题目部分 在Oracle中,可以exp出来的dmp文件获取哪些信息? ♣ 答案部分 在开发中常常碰到,需要导入dmp文件到现有数据库。...那么如何现有的dmp文件中获取到这些信息呢?下面作者将一一讲解。...(一)获取基本信息:导出的版本、时间、导出的用户 下面的示例中exp_ddl_lhr_02.dmp是生成的dmp文件: [ZFZHLHRDB1:oracle]:/tmp>strings exp_ddl_lhr...#C#G #C#G +00:00 BYTE UNUSED (二)获取dmp文件中的表信息 下面的示例中,exp_ddl_lhr_02.dmp是生成的dmp文件: [ZFZHLHRDB1:oracle...parfile文件 下面的示例中,exp_ddl_lhr_03.dmp是生成的dmp文件: [ZFZHLHRDB1:oracle]:/tmp>strings exp_ddl_lhr_03.dmp |

2.4K30

DTO与值对象和POJO比较

对Value Object做一个注释:C#中有一个类似的概念,即Value Type。它只是对象如何存储在内存中的实现细节,我不打算触及它。...另一个非POCO方法的好例子是4.0版之前的Entity Framework。每个EF生成的类都继承自EntityObject基类,因此带来了很多特定于Entity Framework的复杂性。...4.0版开始,Entity Framework引入了POCO数据模型,该模型允许使用不从EntityObject继承的类。 也就是说,POCO代表领域对象使用尽可能简单的类。...它取决于它的POCO类型:值对象或实体。此外,POCO可能包含也可能不包含逻辑。这取决于天气与否POCO是DTO。 总结 以下内容总结这个主题: 1、DTO!...=价值对象 2、DTO⊂POCO 3、值对象⊂POCO

2.1K20

谁偷偷删了你的微信?别慌!Python 帮你都揪出来了

相信每个人的微信通信录里都存在一些「僵尸粉」,他们默默地躺在联系人列表中,你以为对方还是朋友,那就真是太年轻、太天真的;实际上,对方早就把好友列表中删了,那如何来筛选出这群人呢?...微信数据库的密码是由设备的 imei 和微信的 uid 进过 md5 算法生成的。.../** * 根据imei和uin生成的md5码,获取数据库的密码(去前七位的小写字母) * * @param imei * @param uin * @return */ public static...首先,我们需要初始化 Airtest,然后利用 adb 把第 1 步生成的数据手机里导出到本地。...(target_path): """ 手机中导出通信录数据 :param target_path: :return: """ # 微信通信录数据

1K31

一个小型、快速、轻量级的 .NET NoSQL 嵌入式数据库

LiteDB完全用 C# 托管代码开发,并且是免费和开源的,Github Star 数近 7k。它非常适合在移动应用 (Xamarin iOS/Android)和小型的桌面/Web 应用中使用。...kb) 支持线程和进程安全 支持文档/操作级别的 ACID 支持写失败后的数据还原 (日志模式) 可使用 DES (AES) 加密算法进行数据文件加密 可使用特性或 fluent 映射 API 将你的 POCO...SQL 命令 还可以查询引擎获取详细的解释计划,以检查查询是否以最佳性能运行 使用 1 安装依赖 dotnet add package LiteDB --version 5.0.15 或者 NuGet...= new LiteDatabase(@"MyData.db"); 4 使用方法 // 获取 Customers 集合 var col = db.GetCollection("customers...= new LiteDatabase("MyOrderDatafile.db")) { var orders = db.GetCollection("orders");

2K20

谁偷偷删了你的微信?别慌!Python 帮你都揪出来了

相信每个人的微信通信录里都存在一些「僵尸粉」,他们默默地躺在联系人列表中,你以为对方还是朋友,那就真是太年轻、太天真的;实际上,对方早就把好友列表中删了,那如何来筛选出这群人呢?...微信数据库的密码是由设备的 imei 和微信的 uid 进过 md5 算法生成的。.../** * 根据imei和uin生成的md5码,获取数据库的密码(去前七位的小写字母) * * @param imei * @param uin * @return */ public static...首先,我们需要初始化 Airtest,然后利用 adb 把第 1 步生成的数据手机里导出到本地。...(target_path): """ 手机中导出通信录数据 :param target_path: :return: """ # 微信通信录数据

89750

.NET轻量级ORM PetaPoco简介及使用示例代码

它提供了简单、快速、灵活的方式来与数据库进行交互,支持多种数据库类型,包括SQL Server、MySQL、SQLite、Oracle等。本文主要介绍PetaPoco的特点及优势,以及相关示例代码。...它采用了轻量级的对象映射机制,避免了过多的ORM特性和复杂的查询生成器。 4)灵活性 PetaPoco提供了灵活的查询和映射选项,可以满足各种复杂的数据访问需求。...>(some_id); //分页,分页的代码会自动生成 var result=db.Page(1, 20,"SELECT * FROM ShelfMissionInfo...args); var totalNumber = result.TotalItems;//所有数据条数 var data = result.Items;//查询返回的数据 // 逐行查询每条记录,一次只数据库表中取一条数据...SELECT * FROM ShelfMissionInfo")) { Console.WriteLine("{0} - {1}", a.id, a.title); } //查询单个字段,返回非Poco

41840
领券