我理解EF为什么有ToListAsync
或SaveChangesAsync
的原因-因为它等待db操作执行。但是AddAsync
仅返回Task.FromResult
-那么为什么会有AddAsync
方法呢?为什么要使用它?
答案 0 :(得分:9)
此方法是异步的,仅允许特殊值生成器(例如“ Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo”使用的生成器)异步访问数据库。对于所有其他情况,应使用非异步方法。
SqlServerValueGenerationStrategy.SequenceHiLo:
一种基于序列的逻辑模式,其中从服务器分配ID块,并将其用于客户端以生成密钥。
答案 1 :(得分:0)
以“已添加”状态开始跟踪给定的实体以及尚未被跟踪的任何其他可达实体,以便在调用SaveChanges()时将其插入数据库中。