切换导航
{{systemName}}
{{ info.Title }}
{{info.Title}}
{{ menu.Title }}
{{menu.Title}}
登录
|
退出
搜索
秘籍列表
ASP.NET基础及企业项目应用
必备工具的安装及C#基础的介绍
ASP.NET高级
数据库操作
Web前端基础
ASP.NET建站核心
ASP.NET MVC
.Net项目
ASP.NET 数据库及各种ORM使用教程
面试
ASP.NET 数据库及各种ORM使用教程
### 第一节介绍 .NET ORM框架是.NET开发中常用的一个工具,它可以帮助开发者将应用程序的对象模型与数据库中的数据进行映射,从而使开发者能够更轻松地进行数据库操作,减少了繁琐的数据库操作代码。 #### 常用ORM框架 以下是.NET开发中常用的一些ORM框架: >1.Entity Framework:它是微软官方提供的[ORM](https://www.nuget.org/packages/EntityFramework#readme-body-tab "ORM")框架,支持多种数据库,包括SQL Server、MySQL、Oracle等。Entity Framework通过使用LINQ来查询数据库,提供了很好的扩展性和灵活性。 2.NHibernate:它是一个.NET平台下的开源[ORM](https://www.nuget.org/packages/NHibernate#readme-body-tab "ORM")框架,它支持多种数据库,包括SQL Server、MySQL、Oracle、PostgreSQL等。NHibernate提供了很多高级特性,如懒加载、多对多关系等。 3.Dapper:它是一个轻量级的ORM框架,是Stack Overflow开发的。相比于其他[ORM](https://www.nuget.org/packages/Dapper#readme-body-tab "ORM")框架,Dapper的性能更好,因为它的代码精简,不需要像其他框架那样复杂的对象关系映射。 4.Linq to SQL:它是微软官方提供的[ORM](https://www.nuget.org/packages/linq2db/#readme-body-tab "ORM")框架之一,支持SQL Server数据库。它提供了很好的LINQ支持,使得开发者能够通过简单的代码实现数据库操作。 5.SqlSugar: 背景SqlSugar是一款国产[ORM](https://www.nuget.org/packages/SqlSugar#readme-body-tab "ORM"),除了拥有媲美原生的性能另外还有满足各种需求的功能,简单好用一分钟就能够轻松上手。 6.Freesql:是一款功能强大的对象关系映射[ORM](https://www.nuget.org/packages/FreeSql/3.2.696-preview20230520#readme-body-tab "ORM")组件。 选择合适的ORM框架需要根据具体的需求和应用场景,需要考虑的因素包括性能、开发效率、易用性、扩展性等。 #### 为何在建站核心会讲ADO.NET ADO.NET(不是orm) 由于Ado直接操作数据库,性能开销最小;而ORM架构大多使用反射来获取对象属性,然后映射成数据字段,或者反过来把字段映射成属性,反射有性能上的开销。 学习请看[ASP.NET建站核心](https://www.jiyuwu.com/Secret/SecretLearn/39 "ASP.NET建站核心")的[第六节](https://www.bilibili.com/video/BV1gW411o7cS/?p=6&share_source=copy_web&vd_source=160a6bb7aac774f8784a54ccad1255a1 "第六节") 已记录的[ADO.NET类库](https://www.jiyuwu.com/Article/SginList?mySgin=SqlHelper "ADO.NET类库") 参考链接: [官方文档](https://docs.microsoft.com/zh-cn/dotnet/framework/data/adonet/ "官方文档") #### 第二节Entity Framework 1.首先添加entityframework框架 ``` dotnet add package EntityFramework --version 6.4.4 ``` 2.编写连接配置 ``` <connectionStrings> <add name="connStr" connectionString="Data Source=DESKTOP-BT6H4DU;Initial Catalog=test;User ID=sa;Password=123456" providerName="System.Data.SqlClient" /> </connectionStrings> ``` 3.之后创建数据类,映射到表名,保持字段一致 ``` [Table("T_person")] public class Person { public String Name { get; set; } public long Id { get; set; } public int Age { get; set; } } ``` 4.注册数据库操作 ``` public class test1dbcontext:DbContext { public test1dbcontext() : base("name=connStr") { } public DbSet<Person> Persons { get; set; } } ``` 5.执行添加 ``` using (test1dbcontext ct = new test1dbcontext()) { Person p1 = new Person(); p1.Name = "ASP"; p1.Age = 99; ct.Persons.Add(p1); ct.SaveChanges(); Console.WriteLine("ok"); Console.ReadKey(); } ```
上一篇
下一篇
版权所有:机遇屋在线 Copyright © 2021-2025 jiyuwu Co., Ltd.
鲁ICP备16042261号-1