1. 安装运行环境
EntityFramework Core运行环境,安装NuGget包:
//Sql Server Database ProviderPM> Install-Package Microsoft.EntityFrameworkCore.SqlServer
//提供Add-Migration,Update-Database等Powershell命令PM> Install-Package Microsoft.EntityFrameworkCore.Tools
2. 控制台程序
2.1 基础代码
实体类:Role.cs
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
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; } }}
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 DbSetRoles { 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'管理员'