ASP.NET Core 使用 EF Core

一、NuGet安装EF Core支持的程序包,使用sql server 数据库

右键单击“项目” > “管理NuGet程序包” 查找安装

sql server:

Microsoft.EntityFrameworkCore.SqlServer:Sql Server数据库EF提供程序

Microsoft.EntityFrameworkCore.Design:设计时使用到的EF共享库

Microsoft.EntityFrameworkCore.Tools:EF的NuGet包管理器命令工具

 

Mysql需要安装:

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

二、创建实体类

 public class User
    {
        /// <summary>
        /// 用户ID
        /// </summary>
        [Description("用户ID")]
        [Key]
        public int id { get; set; } 
        /// <summary>
        /// 用户名
        /// </summary>
        [Description("用户名")]
        public string name { get; set; }
        /// <summary>
        /// 用户名
        /// </summary>
        [Description("用户密码")]
        public int password { get; set; }

    }

三、创建数据库上下文(MyDBContext)

  public class MyDBContext : DbContext
    {
        public MyDBContext() { }
        public MyDBContext(DbContextOptions<MyDBContext> options) : base(options)
        {


        //用户类
        public virtual DbSet<User> User { get; set; }

    }

四、appsettings.json配置数据库连接字符串

(不是密码)

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
},
"AllowedHosts": "*",
//连接字符串
"ConnectionStrings": {
    "SqlServer": "Data Source=.;Initial Catalog=DormitoryDB;Integrated Security=True"
  }
}

(sa密码)

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
},
"AllowedHosts": "*",

//连接字符串
"ConnectionStrings": {
   
     "SqlServer": "server=localhost;database=数据库名;uid=管理员账户;pwd=密码;CharSet=utf8"
  }
}

五、注册上下文对象依赖注入服务,连接数据库

在Startup.cs中ConfigureServices方法中注册数据库上下文

     public void ConfigureServices(IServiceCollection services)
        {
            #region 数据库上下文注册
           
            //注册上下文对象

            services.AddDbContext<MyDBContext>(options =>
            {
                options.UseSqlServer(Configuration.GetConnectionString("SqlServer"));
                //options.EnableSensitiveDataLogging();
            });

            #endregion

            services.AddControllers();
            services.AddSwaggerGen(c =>
            {
            c.SwaggerDoc("v1", new OpenApiInfo { Title = "SystemAPi", Version = "v1" });
            });


            
        }

在数据库上下文中添加连接数据库字符串

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
     => optionsBuilder.SqlServer(@"Server=.Database=数据库名字;Integrated Security=True");
    }

 

六、生成数据库。使用NuGet包管理命令来生成数据库和表

打开Visual Studio的“工具”> “NuGet包管理器”>“程序包管理控制台

输入以下命令:

Add-Migration 迁移名称(版本名称)

Update-Database 迁移名称(版本名称) 然后数据库生成成功

使用remove-Migration 删除上一次的迁移(版本)

remove-Migration 删除上一次的迁移(版本)

接着就可以在控制器中写自己要实现的接口了

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>