尝试 edit/update 时出现 DBContext 错误
DBContext error when attempting to edit/update
在 jquery/jqgrid table 中执行内联编辑时,我看到 ID (PK) 和列值出现在我的 public IActionResult Edit URL 中有 200 个响应。但是,我随后遇到一个错误,我的 DBContext 不存在,但它与我用来检索数据的 dbcontext 相同。另外,无法 return 字符串消息?在我的编辑工作之前的代码,我做错了什么?
namespace MyProject.Controllers
{
public class CheckRequestController : Controller
{
private readonly MyDBContext _context;
public CheckRequestController(MyDBContext context)
{
_context = context;
}
public IActionResult Index()
{
return View();
}
public IActionResult LoadData()
{
try
{
var fileData = (from tempFile in _context.CheckRequest
select tempFile);
var data = fileData.ToList();
return Json(data);
}
catch (Exception)
{
throw;
}
}
// I'm trying to run an update to the row in SQL Server. I see my ID and the values come across 200 status but can't update.. Also can't return string from IAction
// Also can't return string from IActionResult or ActionResult. How to return message if failure
public IActionResult Edit(CheckRequest checkrequests)
{
try
{
if (ModelState.IsValid)
{
using (MyDBContext db = new MyDBContext())
{
db.Entry(checkrequests).State = EntityState.Modified;
db.SaveChanges();
}
}
}
catch (Exception ex)
{
//msg = "Error occured:" + ex.Message;
var msg = new string[] { "Error occured:" + ex.Message };
}
return msg;
}
}
}
我删除了只读并且能够跟踪服务器并查看请求;不敢相信我的眼睛没有看到。仍然好奇如何捕获和 return 错误消息,该消息在 IActionResult 中的 return 上很有用。现在我把它改成 return Ok() 所以如果发生错误它就没有用了。
在 jquery/jqgrid table 中执行内联编辑时,我看到 ID (PK) 和列值出现在我的 public IActionResult Edit URL 中有 200 个响应。但是,我随后遇到一个错误,我的 DBContext 不存在,但它与我用来检索数据的 dbcontext 相同。另外,无法 return 字符串消息?在我的编辑工作之前的代码,我做错了什么?
namespace MyProject.Controllers
{
public class CheckRequestController : Controller
{
private readonly MyDBContext _context;
public CheckRequestController(MyDBContext context)
{
_context = context;
}
public IActionResult Index()
{
return View();
}
public IActionResult LoadData()
{
try
{
var fileData = (from tempFile in _context.CheckRequest
select tempFile);
var data = fileData.ToList();
return Json(data);
}
catch (Exception)
{
throw;
}
}
// I'm trying to run an update to the row in SQL Server. I see my ID and the values come across 200 status but can't update.. Also can't return string from IAction
// Also can't return string from IActionResult or ActionResult. How to return message if failure
public IActionResult Edit(CheckRequest checkrequests)
{
try
{
if (ModelState.IsValid)
{
using (MyDBContext db = new MyDBContext())
{
db.Entry(checkrequests).State = EntityState.Modified;
db.SaveChanges();
}
}
}
catch (Exception ex)
{
//msg = "Error occured:" + ex.Message;
var msg = new string[] { "Error occured:" + ex.Message };
}
return msg;
}
}
}
我删除了只读并且能够跟踪服务器并查看请求;不敢相信我的眼睛没有看到。仍然好奇如何捕获和 return 错误消息,该消息在 IActionResult 中的 return 上很有用。现在我把它改成 return Ok() 所以如果发生错误它就没有用了。