ASP.NET核心从控制器返回Bad对象

时间:2018-09-19 19:31:46

标签: json asp.net-core asp.net-core-mvc

我有repo方法,该方法更新数据库中的条目。这是回购方法的代码

 public async Task<string> UpdateProfile(string email, string firstname, string lastname, DateTime birthday)
    {
        string result;
        var user = _context.AspNetUsers.Where(x => x.Email == email).FirstOrDefault();
        user.FirstName = firstname;
        user.LastName = lastname;
        user.Birthday = birthday;
        await _context.SaveChangesAsync();
        result = "Updated";
        return result;
    }

这就是我从控制器中调用它的方式

[HttpPost]
    public JsonResult UpdateProfile([FromBody] ProfileViewModel profile)
    {
        var result = _profile.UpdateProfile(profile.Email, profile.FirstName, profile.LastName, profile.Birthday);
        return Json(result);
    }

但是在邮递员中,我看到Bad object,但是条目已更新。

为什么我得到这个以及如何解决?

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

这样的更新方法:

[HttpPost]
    public async Task<IActionResult> UpdateProfile([FromBody] ProfileViewModel profile)
    {
        var result = await _profile.UpdateProfile(profile.Email, profile.FirstName, profile.LastName, profile.Birthday);
        return Ok(result);
    }

将返回类型更改为IActionResult,还使控制器动作异步。