EntityFramework Core入门教程-04-插入数据

通过实例化DbContext,对数据库进行插入,EFCore提供了四个接口插入:
context.Leagues.Add();
context.Leagues.AddRange();
context.Add();
context.AddRange();

调用Add和AddRange方法后并不会立即更新数据库,执行SaveChange()才会将数据插入到数据库中

using var context = new ContextDemo();//C#8语法,当前方法结束后释放资源

//添加一条数据
var league1 = new League
{
    Name = "LeagueA"
};
context.Leagues.Add(league1);

//AddRange添加多条数据
var LeagueList = new List<League>
{
    new League{Name="LeagueB"},
    new League{Country="Japan",Name="LeagueC"}
};
context.Leagues.AddRange(LeagueList);


var league2 = new League { Name = "leagueD", Country = "UK" };
var lealgue3 = new League { Name = "leagueE", Country = "Australia" };

var leagueA = context.Leagues.FirstOrDefault(e => e.Name == "LeaguA");
var club1 = new Club
{
    Name = "Club1",
    City = "Shanghai",
    DateOfEstablishment = new DateTime(1988, 12, 16),
    League = leagueA
};

var club2 = new Club
{
    Name = "Club2",
    City = "Shanghai",
    DateOfEstablishment = new DateTime(1988, 12, 16),
    League = leagueA,
    Players=new List<Player>
    {
        new Player{Name="Henry",DateOfBirth=new DateTime(1993,01,25) },
        new Player{Name="Jack",DateOfBirth=new DateTime(1991,01,25) }
    }
};
//添加不同类型的实体
context.AddRange(club1, league2, lealgue3, club2);

var count = context.SaveChanges();//返回修改的记录数
Console.WriteLine(count);

猜你喜欢

转载自blog.csdn.net/weixin_40719943/article/details/106959206