【问题标题】:ASP.NET Web API IIS hosting REST Methods produces NULL in RethinkDBASP.NET Web API IIS 托管 REST 方法在 RethinkDB 中产生 NULL
【发布时间】:2019-04-20 16:41:41
【问题描述】:

我正在制作一个 Web API 来处理我的 Android 应用程序的 HTTP 请求和 rethinkDB 连接。但我认为 IIS 有问题。当我向 API 发送 POST 请求时,它会为我的用户身份生成空值。我的数据库在 localhost 上运行。

我的 POST 方法是(没有 DB 语法错误。)=

public IHttpActionResult PostNewUserModel(StudentViewModel studentViewModel)
        {
            if (!ModelState.IsValid)
                return BadRequest("Invalid data.");

            var conn = connection();

            var newStudentViewModel = new StudentViewModel
            {
                Id = studentViewModel.Id,
                FirstName  = studentViewModel.FirstName,
                LastName = studentViewModel.LastName
            };

            R.Db(MYDBNAME).Table(MYTABLENAME).Insert(newStudentViewModel).Run(conn);


            return Ok();
        }

我发布了这个实体 =

{
    "Id": 6,
    "FirstName": "Nihat Can Doğamaz",
    "LastName": "CANITIN"
}

但我在 RethinkDB 表中看到这个实体是这样的 =

{
"FirstName": null ,
"Id": 0 ,
"LastName": null
}

如何解决?

【问题讨论】:

  • 您是否尝试过在控制器操作中放置断点并检查studentViewModel 参数的属性?
  • @MohsinMehmood 我无法进行调试,因为代码在 IIS 服务器上运行,而不是在我的 Visual Studio 上。 IIS 托管之前不存在 HTTP 请求问题。我可以使用 localhost 成功发出 HTTP POST 请求。

标签: asp.net iis asp.net-web-api rethinkdb


【解决方案1】:

我解决了错误。 DB 无法识别返回的 JSON 格式。它必须在 POSTMAN 中标识。您必须选择 JSON(application/json) 正文格式才能将 JSON 对象写入数据库。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-18
    • 1970-01-01
    • 2016-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多