C#11添加了文件作用域類型功能:一個新的file修飾符,可以應用於任何類型定義以限制其只能在當前文件中使用。 這樣,我們可以在一個項目中擁有多個同名的類。 通過下麵的項目顯示,該項目包含兩個名為Answer的類。 文件File1.cs中 namespace ConsoleApp11 { file ...
入門實戰-使用EF,操作資料庫,要先配好相應代碼
(1).創建資料庫和表(在篇3內已講過);
(2).使用Nuget引入和安裝EF的兩個文件包(在篇3內已講過);
(3).在appsetting.json中添加資料庫連接字元串(在篇3內已講過);
(4).在項目根目錄Db文件夾中創建一個AppDbContext.cs類;
public class AppDbContext : DbContext { public AppDbContext(DbContextOptions<AppDbContext> options) : base(options) { } //各名稱對應數據表名 public DbSet<Menu> Menu { get; set; } }
(註意在MVC對應的Models文件內,新建一個Menu.cs的model類,它的屬性與資料庫的表欄位對應,可以等到下節將增、刪、改、查、時,在添加此類文件)可以見下麵代碼
(5).在Startup.cs文件中配置資料庫連接
代碼為:
services.AddEntityFrameworkSqlServer().AddDbContextPool<AppDbContext>(options => { options.UseSqlServer(Configuration.GetSection("DbConnectionStr")["SqlServerStr"]); //讀取appsetting.json文件中的資料庫配置字元串 });
使用的資料庫為Sql-Server,如果用Mysql資料庫,則可以先通過nuget安裝mysql的軟體包,然後關鍵代碼修改為:
options.UseMySql(Configuration.GetSection("DbConnectionStr")["SqlServerStr"]);
(6).關於在appsettging.json中配置的數據代碼:
options.UseSqlServer(Configuration.GetConnectionString("SqlServerStr "));
用這句代碼來直接獲取到SqlServerStr節點來讀取配置。
(7).Asp.Net core的EF(Entity Framework)中有新功能,配置好EF以後,併在增加了Model類文件後,通過在命令界面,就是程式包管理器控制台,來操作數據遷移,資料庫更新等命令,跟前面的寫實體類代碼,約定匹配關係等,這一系列的過程,有2個名字:Code First和Database First(Db First);
區別是:Db First,先建庫建表,在寫實體類和匹配關係;
Code First,先寫實體類和匹配關係,通過命令成資料庫;
要入門,先Db First,它很適合初學者,或者是比較急的小型項目。詳細的數據遷移等命令和模式詳解,可以自行百度或查看微軟官網學習。