C#实现简单的ORM框架操作关系型数据库
什么是ORM
ORM是通过使用描述对象和数据库之间映射的元数据,在我们想到描述的时候自然就想到了xml和特性(Attribute).目前的ORM框架中,Hibernate就是典型的使用xml文件作为描述实体对象的映射框架,而大名鼎鼎的Linq则是使用特性(Attribute)来描述的。
C#实现ORM需要的前提条件
- 已经安装了 dotnet 的运行环境
- 安装 Microsoft.EntityFrameworkCore.Desigh 包
- 安装 Microsoft.EntityFrameworkCore.Sqlite 包
>> 一种轻量化的关系型数据库
dotnet的命令操作
dotnet new console //创建一个控制台C#程序
dotnet tool install --global dotnet-ef //现在要单独安装
dotnet ef migrations add Init //类实例化
dotnet ef database update //更新
增删查改操作
static void Main(string[] args)
{
var dbContext = new MyAppDbContext();
foreach(var music in dbContext.Musics){
Console.WriteLine(music.Title+"\t"+music.Genre);
}
/* var dbSet = dbContext.Musics.Where(t => t.Title == "Back to December");
int count = dbSet.Count(); /
/ var fightsong = dbContext.Musics.SingleOrDefault(t => t.Title == "Fight Song 2");
dbContext.Musics.Remove(fightsong);
dbContext.SaveChanges(); /
//Console.WriteLine(fightsong.Genre);
//增加
/ var dbContext = new MyAppDbContext();
dbContext.Musics.Add(new Music{
Title = "Back to December",
Genre = "Country",
PublishTime = DateTime.Now
});
dbContext.SaveChanges();/
/ var dbContext = new MyAppDbContext();
dbContext.Musics.Add(new Music{
Title = "Fight Song 2",
Genre = "Rap",
PublishTime = DateTime.Now
});
dbContext.SaveChanges(); */
}