当前位置: 首页 > 知识库问答 >
问题:

邮递员问题JSON值无法转换为agsamplewebapi.Model.Employee

闾丘卓
2023-03-14

我正在开发ASP。NET Core web api应用程序将暴露于Angular 6

在开发web api Post请求之后,我继续到PostMan检查Post请求,它得到一个错误“JSON值不能被转换成agsamplewebapi . model . employee . Path:$ | line number:0 | bytepositoninline:1。”

模型代码

 public class Employee
  {
    public int Id { get; set; }
    public string Eno { get; set; }
    public string Ename { get; set; }
    public decimal Salary { get; set; }
    public string Gender { get; set; }
    public string Designation { get; set; }
  }

控制器代码

[EnableCors("CorsPolicy")]
  [Route("api/[controller]")]
  [ApiController]
  public class EmployeesController : ControllerBase
  {
    private readonly EmployeeContext _context;

    public EmployeesController(EmployeeContext context)
    {
      _context = context;
    }
    // POST: api/Employees
    [HttpPost]
    public async Task<ActionResult<Employee>> PostEmployee(Employee employee)
    {
      _context.Employee.Add(employee);
      await _context.SaveChangesAsync();

      return CreatedAtAction("GetEmployee", new { id = employee.Id }, employee);
    }

 }

将Postman与https://localhost:44333/API/Employees一起使用时,在Postman窗口下将显示“Json值无法转换为agsamplewebapi . model . employee . Path:$ | line number:0 | bytepositoninline:1”

[
    {    
        "Eno": "112",
        "Ename": "zzz",
        "Salary": 1888.00,
        "Gender": "M",
        "Designation": "gghh"
    }
]

为我提供合适的指南来解决这个问题

共有1个答案

车靖琪
2023-03-14

您有两种解决方案来解决此问题:

1-从Json中删除[],就像我的评论一样:

{    
   "Eno": "112",
   "Ename": "zzz",
   "Salary": 1888.00,
   "Gender": "M",
   "Designation": "gghh"
}

2-[]表示一个集合,然后您可以更改操作签名,而无需将Json

public async Task<ActionResult<Employee>> PostEmployee(IEnumerable<Employee> employee)
{}

 类似资料:
  • 我创建了对在 AWS 服务器上运行的后端的邮递员 POST API 调用 我得到了适当的回应。我的测试人员(远程工作的人)做了同样的事情,得到了错误的API响应(不是我们所期望的)。 我试着在我们公司的另外4台电脑上做同样的测试用例,得到了同样的正确响应。我的测试人员的邮递员有什么问题?

  • Postman具有将Postman转换为cURL代码的内置函数,但如果我想将cURL代码转换为Postman,如何有效地实现这一点?例如,cURL代码如下所示; 卷曲-v-X柱“https://speech.platform.bing.com/recognize?scenarios=smd 谢谢和最好的问候,

  • 我通过邮递员以以下方式调用我的java webservice(POST请求),这种方式工作得非常好(即,我可以看到我的记录被插入到数据库中): 下面是选项卡中的内容: 我必须使用CURL在PHP中调用相同的请求,而不是通过POSTMAN调用它。我想知道是否有办法将此命令导出到命令,以便在PHP代码中使用它?我在网上的许多地方发现了相反的方法,有人要求将基于Curl的请求转换为POSTMAN,但却不

  • 如何将下面的cURL命令转换为Postman rest调用? 我尝试了以下方法: URL:(POST)abc.com/input.import 标题:内容类型:application/json 正文: 编辑:需要邮递员的原始正文格式。导入以格式创建请求

  • 我试图从邮递员这里发送json正文,我有简单的php代码获取json正文 当我从邮递员那里发送json尸体时,它给出了这些东西 注意:未定义的偏移量:第7行D:\Xampp\htdocs\Ass\index.php中的0 数组 那么如何从php文件中获取json值呢?

  • 我知道这里有人问过这个问题。然而,在这个问题上没有一行代码。我将分享我的代码,以便它可以帮助我和其他可能面临相同问题的人。 这里遵循代码... } } 因此,我使用以下命令创建了一个具有同化密钥的JWT: keytool-genkeypair-alias mytest-keyalg RSA-keypass mypass-keystore mytest。jks-storepass mypass 由于