Yan*_*nal -1 c# entity-framework-core asp.net-core
我有一个带有 .NET 5 的 ASP.Net Core Web API,我想使用一个实体框架 dbset。为了向 dbset 添加记录,我使用以下代码:
[HttpPost]
public IActionResult Add(TblPerson person)
{
try
{
_context.TblPeople.Add(person);
_context.SaveChanges();
return Ok(true);
}
catch
{
return BadRequest();
}
}
Run Code Online (Sandbox Code Playgroud)
注意有一个_context.SaveChanges();. 如果我想将该行从方法中取出并将其分开,它将是这样的:
[HttpPost]
public IActionResult Add(TblPerson person)
{
try
{
_context.TblPeople.Add(person);
return Ok(true);
}
catch
{
return BadRequest();
}
}
[HttpGet]
[Route("Save")]
public IActionResult Save()
{
return Ok(_context.SaveChanges());
}
Run Code Online (Sandbox Code Playgroud)
现在我想看看如果从客户端背对背调用 10 次,从客户端的角度来看哪种方式会更快。
你试过吗?第二种方法不会保存您的实体,因为您的 DbContext 是根据请求实例化的,或者至少应该如此,因此当您的客户端调用 Save() 时,之前添加的实体将消失。
如果出于性能考虑需要批量插入,请提供一种接受数组的方法。
| 归档时间: |
|
| 查看次数: |
39 次 |
| 最近记录: |