在ASP.NET Core 3.1中,如果数据成功被检索但未保存到数据库中,可能有以下几种解决方法:
public class MyController : Controller
{
private readonly ApplicationDbContext _context;
public MyController(ApplicationDbContext context)
{
_context = context;
}
public IActionResult SaveData()
{
// 保存数据时使用正确的数据库上下文实例
_context.SaveChanges();
return RedirectToAction("Index");
}
}
public class MyController : Controller
{
private readonly ApplicationDbContext _context;
public MyController(ApplicationDbContext context)
{
_context = context;
}
public IActionResult Edit(int id)
{
var entity = _context.Entities.Find(id);
// 修改实体的属性
entity.Name = "New Name";
// 将实体的状态设置为已修改
_context.Entry(entity).State = EntityState.Modified;
// 保存更改
_context.SaveChanges();
return RedirectToAction("Index");
}
}
public class MyController : Controller
{
private readonly ApplicationDbContext _context;
public MyController(ApplicationDbContext context)
{
_context = context;
}
public IActionResult SaveData()
{
using (var transaction = _context.Database.BeginTransaction())
{
try
{
// 检索数据并进行更改
// 保存更改
_context.SaveChanges();
// 提交事务
transaction.Commit();
}
catch (Exception)
{
// 回滚事务
transaction.Rollback();
throw;
}
}
return RedirectToAction("Index");
}
}
以上是解决数据被检索但未保存到数据库中的常见方法,具体的解决方法可能因应用程序的实际情况而有所不同。