標籤:tin using creat nbu top ima foreach depend span
Entity Framework Core(以下簡稱“EF Core”)支援多種資料庫。在這篇文章中,我們看看如何使用EF Core的Code First方式建立SQLite資料庫
下載SQLite,解壓後會得到三個檔案,放到c:\sqlite目錄下
我們先建立一個.NET Core控制台程式
添加EF Core for SQLite組件庫
"dependencies": { "Microsoft.EntityFrameworkCore.Sqlite": "1.1.0", "Microsoft.NETCore.App": { "type": "platform", "version": "1.0.0" }},
讓我們建立一個類對應SQLite中的表
public class Category{ public int Id { get; set; } public string Name { get; set; }}
按照國際慣例我們需要從DbContext派生一個類(資料庫上下文)
public class SampleDBContext : DbContext { private static bool _created = false; public SampleDBContext() { if (!_created) { _created = true; Database.EnsureDeleted(); Database.EnsureCreated(); } } protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Entity<Category>().ToTable("tb_Category"); } protected override void OnConfiguring(DbContextOptionsBuilder optionbuilder) { optionbuilder.UseSqlite(@"Data Source=c:\sqlite\sqliteDB.db"); } }
現在讓我們添加一些資料,開啟Main方法,添加下面的代碼
using (var dbContext = new SampleDBContext()) { dbContext.Set<Category>().Add(new Category { Name = "Wigs" }); dbContext.Set<Category>().Add(new Category { Name = "Shoes" }); dbContext.Set<Category>().Add(new Category { Name = "Dresses" }); dbContext.SaveChanges(); foreach (var cat in dbContext.Set<Category>().ToList()) { Console.WriteLine($"CategoryId= {cat.Id}, CategoryName = {cat.Name}"); } } Console.ReadKey();
這個時候會在c:\sqlite下建立一個資料庫檔案sqliteDB.db,可以開啟sqlite工具DB Browser for SQLite
這個例子其實很簡單
使用Entity Framework Core Code First建立SQLite資料庫