ASP.NET Core NET6 EFCore MySQL

这篇具有很好参考价值的文章主要介绍了ASP.NET Core NET6 EFCore MySQL。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

ASP.NET Core 下使用 EFCore 和 .NET Framework 下使用有点区别。
参考官方文档:https://dev.mysql.com/doc/connector-net/en/connector-net-entityframework-core.html

1.创建 ASP.NET Core Web应用 项目

创建新的项目的 Program.cs 文件中使用了顶级语句,与NET5 有所区别。

.NET 6 的 创建的项目使用了C# 顶级语句
https://learn.microsoft.com/zh-cn/dotnet/csharp/whats-new/tutorials/top-level-statements

2.引入相关nuget包

  <ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.10" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="6.0.10">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.10">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    <PackageReference Include="MySql.Data" Version="8.0.31" />
    <PackageReference Include="MySql.EntityFrameworkCore" Version="6.0.7" />
    <PackageReference Include="NLog.Web.AspNetCore" Version="5.1.4" />
  </ItemGroup>

3.创建AppDbContext类

注意: this.Database.EnsureCreated();初始化数据库,如果不存在数据库会创建。

using Microsoft.EntityFrameworkCore;
 public class AppDbContext: DbContext
    {
        public AppDbContext(DbContextOptions<AppDbContext> options) : base(options) {
        	// 初始化数据库,如果不存在数据库会创建
            this.Database.EnsureCreated();
        }
        public DbSet<Models.User> User{ get; set; }

        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
         //   optionsBuilder.UseMySQL("server=localhost;database=library;user=user;password=password");
        }

        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            base.OnModelCreating(modelBuilder);

            modelBuilder.Entity<User>(entity =>
            {
                entity.HasKey(e => e.id);
            });
        }
    }

4.添加连接字符串配置appsettings.json

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.AspNetCore": "Warning"
    }
  },
  "AllowedHosts": "*",
  "ConnectionStrings": {
    "MySQLConnection": "server=127.0.0.1;port=3306;uid=root;database=db1"
  }
}

在var builder = WebApplication.CreateBuilder(args);代码下添加

    builder.Services.AddDbContext<AppDbContext>(opt =>
    {
        opt.UseMySQL(builder.Configuration.GetConnectionString("MySQLConnection"));
    });

最终可以在Controller相关代码中注入 AppDbContext 来操作数据库。文章来源地址https://www.toymoban.com/news/detail-469436.html

到了这里,关于ASP.NET Core NET6 EFCore MySQL的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ASP.NET Core 3.1系列(16)——EFCore之Code First

    前一篇博客介绍了 EFCore 中的 DB First 开发模式,该模式可以根据数据库生成实体类和数据库上下文,因此适用于数据库已经存在的场景。而与之相对应的, Code First 主要是根据自定义的实体类和数据库上下文反向构建数据库,因此也可以看做是 DB First 的逆过程,下面开始介绍

    2024年01月17日
    浏览(47)
  • asp.net core 6.0 efcore +sqlserver增删改查的demo

    下面是一个使用ASP.NET Core 5.0和Entity Framework Core进行增删改查操作的示例。 首先,创建一个空的ASP.NET Core 6.0 Web应用程序项目。 然后,安装以下NuGet包: Microsoft.EntityFrameworkCore.SqlServer Microsoft.EntityFrameworkCore.Tools 接下来,创建一个数据库上下文类,用于定义实体类和数据库连接

    2024年02月13日
    浏览(33)
  • ASP.Net Core Web API结合Entity Framework Core框架(API的创建使用,接口前端权限设置,前端获取API的Get,post方法)(程序包引用以及导入数据库)

    目录 1. Web Api 程序包引用 2. Web Api 的创建与Http类型的介绍 2.1 ASP.Net Core Web API项目的创建 2 .2  API接口的创建 2.3 HttpGet和HttpPost类型的区别 3.接口权限设置 4.HttpGet方法和HttpPOst方法 5.前端中用HttpGet/Poset获取接口数据 6.EF框架——配置数据库链接字符串(即将数据库中的表导入项

    2024年02月08日
    浏览(52)
  • .net core 多项目中使用EFCore

    类库一级项目使用.net core 3.1 框架 其中EFCore是和数据库交互的 MultiCore 注入EFCore中的DBContext与数据库交互 主要为了解决多项目中数据库迁移失败问题 EFCore 工程安装如下包 MultiCore 安装如下 EFCore person.cs personconfig.cs EFDbcontext.cs EFDbContextFac .cs 这是关键,但是这仅仅在开发环境下

    2024年02月07日
    浏览(77)
  • .NET6入门:2.使用模板创建.NET Core Web

                    在目前B/S盛行的时代,本文将通过创建一个.NET Core Web模板的方式来带领大家进入.NET6开发的大门。         1.1 打开Visual Studio(不同版本VS可能创建新项目所在位置不同),单击创建新项目。         1.2 选择C#语言和Web平台,在下面的项目中选中ASP.NET Core Web应

    2024年02月12日
    浏览(33)
  • .Net6 Web Core API --- AOP -- log4net 封装 -- MySQL -- txt

    目录 一、引入 NuGet 包 二、配置log4net.config   三、编写Log4net封装类 四、编写日志记录类 五、AOP -- 拦截器 -- 封装 六、案例编写 七、结果展示 log4net  Microsoft.Extensions.Logging.Log4Net.AspNetCore    MySql.Data         ----  MySQL数据库需要 Newtonsoft.Json Autofac Autofac.Extensions.DependencyInj

    2024年02月14日
    浏览(37)
  • .NET Core/.NET6 使用DbContext 连接数据库,SqlServer

    安装以下NuGet包 Microsoft.EntityFrameworkCore.SqlServer:SQL server 需要添加包 Microsoft.EntityFrameworkCore.Tools Newtonsoft.Json:用于Json格式转换 创建一个实体类来表示数据库表。在项目中创建一个名为Customer.cs的文件,并添加以下代码 创建一个数据库上下文类,用于定义实体类和数据库连接

    2024年02月07日
    浏览(38)
  • 杨中科 .NETCORE ENTITY FRAMEWORK CORE-1 EFCORE 第一部分

    1、说明: 本课程需要你有数据库、SOL等基础知识。 2、ORM: ObjectRelational Mapping。让开发者用对象操作的形式操作关系数据库 比如插入: 比如查询: 3、有哪些ORM: EF core(官方推荐)、Dapper、SqlSugar、FreeSql等 1、Entity Framework Core(EF Coxe)是微软官方的ORM框架优点: 功能强大、官方支持、生

    2024年02月02日
    浏览(50)
  • ASP.NET中使用Entity Framework(EF)关联表查询

    在ASP.NET中使用Entity Framework(EF)进行关联表查询的具体步骤如下: 配置数据库上下文(DbContext):在 DbContext 派生类中,使用 DbSetT 属性表示每个实体对应的数据库表。确保每个实体类和关系都正确映射到数据库表。 定义关联表之间的导航属性:在实体类中,使用导航属性表

    2024年02月14日
    浏览(41)
  • 【C#/.NET】使用ASP.NET Core对象池

    Microsoft.Extensions.ObjectPool   减少初始化/资源分配,提高性能。这一条与线程池同理,有些对象的初始化或资源分配耗时长,复用这些对象减少初始化和资源分配。比如:我有一个执行耗时约500毫秒,内存空间 2KB的任务为此创建一个新线程异步执行,而创建线程耗时1秒,内存空

    2024年02月06日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包