如何 select & 使用 EF Core 3.1 更新单个字段
How to select & update a single field using EF Core 3.1
如何实现此功能,如:
UPDATE BlogSite
SET PostCount = PostCount + 1
WHERE BlogId = @BlogId
基于 entity framework 3.1 (MySQL)
// I assume your DBContext object is _db.
var blogSite=_db.BlogSite.Find(BlogId);
blogSite.PostCount++;
_db.SaveChanges();
除了@sadullah 的回答,
为了使其原子化和高效,我建议您将其包装在一个事务中,因为您有两个数据库操作(select,更新)。而且您可能还想考虑使用 efcore 函数的异步版本。
using (var transaction = await _yourDbContext.Database.BeginTransactionAsync())
{
var entry = await _yourDbContext.BlogSite.FindAsync(*);
entry.PostCount++;
await _yourDbContext.SaveChangesAsync();
await transaction.CommitAsync();
}
如何实现此功能,如:
UPDATE BlogSite
SET PostCount = PostCount + 1
WHERE BlogId = @BlogId
基于 entity framework 3.1 (MySQL)
// I assume your DBContext object is _db.
var blogSite=_db.BlogSite.Find(BlogId);
blogSite.PostCount++;
_db.SaveChanges();
除了@sadullah 的回答,
为了使其原子化和高效,我建议您将其包装在一个事务中,因为您有两个数据库操作(select,更新)。而且您可能还想考虑使用 efcore 函数的异步版本。
using (var transaction = await _yourDbContext.Database.BeginTransactionAsync())
{
var entry = await _yourDbContext.BlogSite.FindAsync(*);
entry.PostCount++;
await _yourDbContext.SaveChangesAsync();
await transaction.CommitAsync();
}