值“ AddOrder”无效

时间:2019-05-21 17:14:17

标签: asp.net azure asp.net-core azure-cosmosdb

我使用asp.net core和cosmos db创建了一个目录api。我发布了一个目录数据集。但出现以下错误。我使用断点调试它,问题是我的结果正文为空。

{"errors":{"id":["The value 'AddOrder' is not valid."]},"title":"One or more validation errors occurred.","status":400,"traceId":"80000011-0005-fe00-b63f-84710c7967bb"}

Catalog controller code example

Catalog repository code example

azure cosmos db结构: enter image description here

我做错了什么?

发布json文件:

{
  "Id": 1,
  "venderId": 1,
  "IndustryName": "dsa",
  "ProductName": "sad",
  "CurrentQuantity": 1,
  "Tag": "sad",
  "Unit": "dsad",
  "Price": 34,
  "Class": "dsfs",
  "category": {
    "Id": 1,
    "Name": "freg",
    "Description": "fdf",
    "subcategory": [
      {
        "Id": 1,
        "Name": "ergt",
        "Description": "erfwef"
      }
    ]
  }
}

2 个答案:

答案 0 :(得分:3)

我将Id表示为Guid值。当尝试添加订单时,我将id值设为1,2,3 .... 但Guid值我需要传递Id值,例如80000011-0005-fe00-b63f-84710c7967bb。 那是问题。

答案 1 :(得分:1)

您的控制器代码正在验证模型并返回BadRequest:https://github.com/kajasumanie/calalogapi/blob/master/CalalogAPI/Controllers/BooksController.cs#L41

if (!ModelState.IsValid)
{
    return BadRequest(ModelState);
}

您看到的错误与Cosmos DB无关,无论您发送的有效负载如何对Catalog类都是无效的。

该类在您的存储库中不可用,因此很难说。您应该对照模型类检查有效载荷,并确认满足格式和要求。