Cześć, używam ASP.NET Core MVC i zastanawiam się czy potrzebuję użyć wyrażeń lock. Mam taki kod w Configuration:
services.AddDbContext<ApplicationDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
services.AddIdentity<ApplicationUser, IdentityRole>()
.AddEntityFrameworkStores<ApplicationDbContext>()
.AddDefaultTokenProviders();
W kilku kontrolerach mam kod taki jak:
private readonly ApplicationDbContext _db;
public MyController(ApplicationDbContext db)
{
_db = db;
}
Zapisuję do bazy standardowo:
_db.MyClass.Add(newObject);
_db.SaveChanges();
I teraz zastanawiam się czy może się zdarzyć, że SaveChanges będzie się wykonywało dla kilku użytkowników aplikacji na raz? Czy nie będzie jakichś konfliktów? Czy SaveChanges używa lock wewnątrz? Czy muszę samemu używać locków?
Dzięki!