简体   繁体   English

如何使用json使用发布请求(Web API C#)

[英]How to Consume a Post Request w/ json (Web API c#)

I am facing a strange issue. 我面临一个奇怪的问题。 I am trying to consume a json object from a post (made in postman): 我正在尝试从帖子(由邮递员制作)中使用json对象:

POST /api/orders/ HTTP/1.1
Host: localhost:61595
Content-Type: application/json
Cache-Control: no-cache
Postman-Token: 1b628111-4498-e175-733b-00172ad529d6

{
   "Fname" : "Jonathan",
   "Lname" : "Barker",
   "OrderItem" : "64734"
}

My controller looks like this: 我的控制器如下所示:

// POST: api/Orders
    public void Post([FromBody]string value)
    {
        var oMycustomclassname =Newtonsoft.Json.JsonConvert.DeserializeObject<dynamic>(value);
    }

In debug value is null. 在调试值是null。 I am sure I am missing something simple. 我确信我缺少一些简单的东西。 Can someone please explain what I am doing wrong? 有人可以解释我做错了吗? Thanks! 谢谢!

you can create a class for your parameter: 您可以为参数创建一个类:

class Order
{
    public string OrderItem {get;set;}
    public string Fname {get;set;}
    public string Lname {get;set;}
}

Then you can change string to Order in your API parameter: 然后,您可以在API参数中将string更改为Order

// POST: api/Orders
public void Post([FromBody]Order value)
{
    //value already contains Lname, Fname, and OrderItem.
    //Access it like this: value.Lname
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM