【增加一条新的数据】
因为使用数据库先行的模式,所以将数据保存到数据库的操作变得非常简单,你只需要写简单的几行代码就能将对象的实例保存到数据库中
using (var dbContext=new BankSchemaContext())
{
//添加一个Teller对象实例到DbSet
dbContext.Tellers.Add(new Teller()
{
Id = 28,
Branch = "",
Contact = "张三",
Gender = 1,
TellerAccount = "99999",
SignInPassword = "123456",
TellerPassword = "123456",
CreateDateTime = DateTime.Now
});
//保存Teller对象实例到数据库中
dbContext.SaveChanges();
}
你也可以使用下面的方式,将数据保存到数据库中
Teller teller = new Teller()
{
Id = 28,
Branch = "",
Contact = "张三",
Gender = 1,
TellerAccount = "99999",
SignInPassword = "123456",
TellerPassword = "123456",
CreateDateTime = DateTime.Now
};
//将teller添加到DbEntityEntry中,并将State状态设置为 Added
dbContext.Entry(teller).State=EntityState.Added;
//保存Teller对象实例到数据库中
dbContext.SaveChanges();
当然保存数据也是支持异步的
// dbContext.Tellers.Add(teller);
dbContext.Entry(teller).State = EntityState.Added;
int result = await dbContext.SaveChangesAsync();
【批量数据插入】
Entity Framework提供了AddRange方法,可以让批量插入变得简单
dbContext.Tellers.AddRange(tellers);//tellers=>List<Teller>
dbContext.SaveChanges();
【修改一条数据】
将需要修改的数据从数据库表中查询出来并修改实例的值,然后再将其更新到数据库中
//将DBEntityEntry状态设置为Modified
dbContext.Entry(teller).State=EntityState.Modified;
dbContext.SaveChanges();
【数据删除】
删除数据只需要将将DBEntityEntry状态设置为Deleted
dbContext.Entry(teller).State=EntityState.Deleted;
dbContext.SaveChanges();
【批量删除】
Entity Framework提供了RemoveRange方法,可实现批量删除
dbContext.Tellers.RemoveRange(query);
dbContext.SaveChanges();
也可以通过修改状态的方式批量删除
//dbContext.Tellers.RemoveRange(query);
foreach (var entryTeller in query)
{
dbContext.Entry(entryTeller).State = EntityState.Deleted;
}
dbContext.SaveChanges();