asp.net core .Net 5 Entity Framework core 類庫 使用資料庫連線字串的兩種方式
阿新 • • 發佈:2021-12-06
由於本人基礎差,採用EF core 建立資料庫時,配置資料庫連線字串時,採用了.NET 5 因此記錄一下。
方式一:
配置連線字串:
1 using Microsoft.EntityFrameworkCore; 2 using Microsoft.EntityFrameworkCore.Design; 3 4 namespace MagazineModel.Models 5 { 6 public class DesignTimeDbContextFactory: IDesignTimeDbContextFactory<MagazineContext> 7 {8 9 public MagazineContext CreateDbContext(string[] args) 10 { 11 var builder = new DbContextOptionsBuilder<MagazineContext>(); 12 builder.UseSqlServer("Data Source=.;Initial Catalog=Magazine;User ID=XX;password=XXXXX"); 13 return new MagazineContext(builder.Options);14 } 15 } 16 }
Context使用連線字串
using Microsoft.EntityFrameworkCore; namespace MagazineModel.Models { public class MagazineContext : DbContext { public MagazineContext(DbContextOptions<MagazineContext> options) : base(options) { } public DbSet<Fx361Magazine> Fx361Magazines { get; set; } } }
方式二: Context 直接使用連線字串:
using Microsoft.EntityFrameworkCore; namespace MagazineModel.Models { public class MagazineContext : DbContext { protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { optionsBuilder.UseSqlServer(@"Data Source=.;Initial Catalog=Magazine;User ID=XX;password=XXXXX"); } public DbSet<Fx361Magazine> Fx361Magazines { get; set; } } }
兩種方式皆已經測試,都可以正常連線資料庫,當然建議使用第二種方式,原因是程式碼簡潔明瞭。