.net core连接数据库

Mysql 版本:

Install-Package MySql.Data.EntityFrameworkCore -Pre
Install-Package Pomelo.EntityFrameworkCore.MySql
Install-Package Microsoft.EntityFrameworkCore.Tools
Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design

Sql server 版本:

Install-Package Microsoft.EntityFrameworkCore
Install-Package Microsoft.EntityFrameworkCore.SqlServer
Install-Package Microsoft.EntityFrameworkCore.Tools
Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design

2.在程序包包管理器控制台 中执行以下语句生成 实体类
–mysql 版本:

Scaffold-DbContext “server=localhost;userid=root;pwd=123;port=3306;database=“数据库名称”;sslmode=none;” Pomelo.EntityFrameworkCore.MySql -o ./Models -Force
或者
Scaffold-DbContext “server=localhost;userid=root;pwd=123;port=3306;database=“数据库名称”;sslmode=none;” Pomelo.EntityFrameworkCore.MySql -o ./Models -UseDatabaseNames -Force
–sql server 版本

Scaffold-DbContext “Data Source=.;Initial Catalog=EFCore_dbfirst;User ID=sa;Password=123” Microsoft.EntityFrameworkCore.SqlServer -o ./Models -Force

-OutputDir *** 实体文件所存放的文件目录
-ContextDir *** DbContext文件存放的目录
-Context *** DbContext文件名
-Schemas *** 需要生成实体数据的数据表所在的模式
-Tables *** 需要生成实体数据的数据表的集合
-DataAnnotations
-UseDatabaseNames 直接使用数据库中的表名和列名(某些版本不支持)
-Force 强制执行,重写已经存在的实体文件

### 如何在 ASP.NET Core 中配置和使用数据库连接 #### 配置数据库连接字符串 为了使应用程序能够访问 SQL Server 数据库,在 `appsettings.json` 文件中定义连接字符串是一个常见的做法。这允许开发者根据不同环境轻松切换不同的数据库设置。 ```json { "ConnectionStrings": { "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=YourDbName;Trusted_Connection=True;" } } ``` 上述 JSON 片段展示了如何声明一个名为 `DefaultConnection` 的连接串[^1]。 #### 注册数据库上下文服务 接着,需要通过依赖注入机制注册用于管理数据库交互的服务。对于 Entity Framework Core 或者像 SqlSugar 这样的第三方 ORM 工具来说,通常是在 `Startup.cs` 或者新的 .NET 6/7 应用中的 `Program.cs` 文件里完成这项工作。 当采用 SqlSugar 来作为数据层框架时,可以按照下面的方法向 DI 容器添加 ISqlSugarClient 单例: ```csharp builder.Services.AddSingleton<ISqlSugarClient>(s => { var sqlSugar = new SqlSugarScope(new ConnectionConfig() { DbType = SqlSugar.DbType.SqlServer, ConnectionString = builder.Configuration.GetConnectionString("DefaultConnection"), IsAutoCloseConnection = true }); return sqlSugar; }); ``` 这段 C# 代码片段说明了怎样初始化并配置 SqlSugar 实例以便在整个应用生命周期内共享同一个客户端对象[^2]。 #### 使用已配置的数据库连接执行查询或其他操作 一旦完成了前面两步的工作之后,就可以利用已经准备好的工具来进行实际的数据读写活动了。比如可以在某个静态类里面编写方法来填充缓存列表或者其他业务逻辑所需的数据集合。 ```csharp public class PublicDataBuffer { public static List<EnvironmentRecord> DataBuffer = new(); public static void InitDataBuffer(ISqlSugarClient dbClient) { DataBuffer.AddRange( dbClient.Queryable<EnvironmentRecord>() .Take(100) .ToList()); } } ``` 这里展示了一个简单的例子,它会从数据库获取最多前一百条记录并将它们加入到内存缓冲区中[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值