Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# API中的post方法未按预期工作_C#_Linq_Api - Fatal编程技术网

C# API中的post方法未按预期工作

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

我有一个简单的api方法将数据插入数据库,postman man中的方法显示了成功,但数据没有插入数据库,这是我的代码

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();

无论如何,你并不真的需要交易。无论如何,你并不真的需要交易。