C# API中的post方法未按预期工作
我有一个简单的api方法将数据插入数据库,postman man中的方法显示了成功,但数据没有插入数据库,这是我的代码C# API中的post方法未按预期工作,c#,linq,api,C#,Linq,Api,我有一个简单的api方法将数据插入数据库,postman man中的方法显示了成功,但数据没有插入数据库,这是我的代码 private Utilities uti = new Utilities(); private readonly ApplicationDBContext db; public AppraisalController(ApplicationDBContext context) { db = context; } //IN
private Utilities uti = new Utilities();
private readonly ApplicationDBContext db;
public AppraisalController(ApplicationDBContext context)
{
db = context;
}
//INSERT API FOR AppraisalIdentity table
[AllowAnonymous]
[Route("api/appraiseinsert")]
[HttpPost]
public IActionResult Create([FromBody] AppraisalIdentity cre)
{
if (cre == null)
{
return BadRequest();
}
using (var transaction = db.Database.BeginTransaction())
{
try
{
#region Appraisal Insert
var apprais = new AppraisalIdentity
{
AppraisalName = cre.AppraisalName,
IsCurrent = cre.IsCurrent,
CompanyID = cre.CompanyID,
DateAdded = cre.DateAdded
};
db.AppraisalIdentity.Add(apprais);
db.SaveChanges();
#endregion
}
catch (Exception ex)
{
transaction.Rollback();
return Json(new
{
statusCode = ex.Message
});
}
}
return Json(new
{
statusCode = "Success"
});
}
我不知道,也许我的代码中有一个我不知道的错误,但事实是在postman中,api返回了成功,但它没有在db中插入任何内容。谢谢因为您正在使用事务,我想您需要在调用db.SaveChanges()后提交事务,如下所示:
db.SaveChanges();
transaction.Commit();
由于您使用的是事务,我想您需要在调用db.SaveChanges()后提交事务,如下所示:
db.SaveChanges();
transaction.Commit();
无论如何,你并不真的需要交易。无论如何,你并不真的需要交易。