C# 使用DB Contex(EF)批量插入(少于100个实体)的最佳方法是什么?

C# 使用DB Contex(EF)批量插入(少于100个实体)的最佳方法是什么?,c#,entity-framework,asp.net-web-api,batch-insert,C#,Entity Framework,Asp.net Web Api,Batch Insert,我正在编写一个WebApi解决方案,该体系结构是以一种只有控制器层可以使用工作单元提交(保存数据库中的更改)的方式完成的。我需要进行批量插入(少于100个实体)。我试着用下面的方法 foreach (var req in Reqs) { await unitOfWork.GetService<IReqService>().AddNewReq(req); try {

我正在编写一个WebApi解决方案,该体系结构是以一种只有控制器层可以使用工作单元提交(保存数据库中的更改)的方式完成的。我需要进行批量插入(少于100个实体)。我试着用下面的方法

        foreach (var req in Reqs)
        {
            await unitOfWork.GetService<IReqService>().AddNewReq(req);
            try
            {
                await unitOfWork.Commit();
            }
            catch (Exception e) { }
        }

工作单元的目的是将上下文中的操作视为单个单元。如果你有可以独立成功或失败的操作,那么这些操作应该由单独的工作单元来限制。@StevePy好的,我认为这是有道理的,我的架构并不是用来帮助我做这些事情的。我只是想确保我没有遗漏什么!
    public async Task Commit()
    {
        if (_tenantDatabase != null)
            await _tenantDatabase.SaveChangesAsync();
    }