在SaveChangesAsync之后返回实体时危险吗?

问题描述 投票:0回答:1

我想知道这段代码有什么问题?是否可以同时在多个请求中导致一些错误并在控制器web api中调用此方法?

public async Task<T> AddAsync(T entity)
{
    _dbContext.Set<T>().Add(entity);
    await _dbContext.SaveChangesAsync();

    return entity;
}
c# entity-framework asynchronous repository-pattern savechanges
1个回答
0
投票

根据定义引用对象(自定义或非自定义)。这本质上意味着在整个方法中所做的任何更改都会反映到您的基础对象中。

简而言之,返回您已经传入参数的同一个对象是不必要的。当您将对象插入表中时,ID将被分配给它(如果适用),只要对象的引用保持不变,这将通过所有类更新。

© www.soinside.com 2019 - 2024. All rights reserved.