zoukankan      html  css  js  c++  java
  • EntityFramework Core笔记:入门(1)

    1. 安装运行环境

      EntityFramework Core运行环境,安装NuGget包:

    //Sql Server Database Provider
    PM> Install-Package Microsoft.EntityFrameworkCore.SqlServer
    //提供Add-Migration,Update-Database等Powershell命令
    PM> Install-Package Microsoft.EntityFrameworkCore.Tools 

    2. 控制台程序

    2.1 基础代码

      实体类:Role.cs

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace Libing.App.Models.Entities
    {
        public class Role
        {
            public int RoleID { get; set; }
    
            public string RoleName { get; set; }
        }
    }
    Role.cs

      DbContext.cs

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    using Microsoft.EntityFrameworkCore;
    
    using Libing.App.Models.Entities;namespace Libing.App.Models
    {
        public class LibingContext : DbContext
        {
            protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
            {
                // 数据库连接
                optionsBuilder.UseSqlServer("Data Source=.;Initial Catalog=Libing;Integrated Security=True;");
            }
    
            protected override void OnModelCreating(ModelBuilder modelBuilder)
            {
            }
    
            public DbSet<Role> Roles { get; set; }
        }
    }

    2.2 生成表结构

    PM> Add-Migration InitialCreate
    PM> Update-Database

    2.3 运行代码

    using System;
    
    using Libing.App.Models;
    using Libing.App.Models.Entities;
    
    namespace Libing.App
    {
        class Program
        {
            static void Main(string[] args)
            {
                using (var context = new LibingContext())
                {
                    var role = new Role
                    {
                        RoleName = "管理员"
                    };
    
                    context.Roles.Add(role);
    
                    context.SaveChanges();
                }
            }
        }
    }

      执行的SQL语句:

    exec sp_executesql N'SET NOCOUNT ON;
    INSERT INTO [dbo].[Role] ([RoleName])
    VALUES (@p0);
    SELECT [RoleID]
    FROM [dbo].[Role]
    WHERE @@ROWCOUNT = 1 AND [RoleID] = scope_identity();
    
    ',N'@p0 nvarchar(100)',@p0=N'管理员'
  • 相关阅读:
    视图类、二次封装、视图家族、GenericAPIView视图基类、mixins视图6大工具类、generic中的工具视图、路由组件
    单改、整体/局部修改、群改接口
    多表、序列化反序列化、群增单删群删接口
    解析模块
    drf框架
    vue-04
    vue-03
    VUE-02
    vue
    ❥《python入门到入土》全教程❥
  • 原文地址:https://www.cnblogs.com/libingql/p/9096267.html
Copyright © 2011-2022 走看看