将JSON发布到WebAPI

时间:2016-07-04 21:23:53

标签: json asp.net-web-api

我需要将一些JSON数据发布到webAPI并将其保存到数据库,现在我从未使用过webAPI,所以我在这里完成了一个完整的学习曲线。

到目前为止,我已经创建了一个webAPI项目和一个用于存放SQL数据的数据库表,我已经通过实体框架添加了模型

我创建了一个名为FormController的APi控制器

这是将发布的JSON

{
"msg": {
"params": {},
"payload": {},
"files": {
  "74277A30-5740-4102-A183-697382A4C240.json": {
    "mimeType": "application/json",
    "data": {
      "auto": [],
      "form": {
        "formId": "74277A30-5740-4102-A183-697382A4C240"
      },
      "fields": [
        {
          "@name": "Patient Name",
          "@type": "DataTypeText",
          "value": "Jane Doe"
        },
        {
          "@name": "Date",
          "@type": "DataTypeText",
          "value": "2016-06-08T12:00:00Z"
        },
        {
          "@name": "Hospital",
          "@type": "DataTypeText",
          "value": "Burwood Hospital"
        },
        {
          "@name": "Wing",
          "@type": "DataTypeText",
          "value": "North Wing"
        },
        {
          "@name": "Level",
          "@type": "DataTypeText",
          "value": "2"
        },
        {
          "@name": "Bed",
          "@type": "DataTypeNumber",
          "value": "11"
        },
        {
          "@name": "Severity",
          "@type": "DataTypeList",
          "value": [
            "High"
          ]
        },
        {
          "@name": "Validation",
          "@type": "DataTypeList",
          "value": [
            "Checked Medical Chart",
            "Personally spoken to patient",
            "Patient is awake"
          ]
        },
        {
          "@name": "Requested by",
          "@type": "DataTypeText",
          "value": "Nice nurse"
        }
      ],
      "template": {
        "name": "Paul Demo App",
        "templateId": "f9f0d5e2-84cb-a345-c1d1-f374c22a40fc",
        "templateLink": ""
      },
      "version": "1.0"
    },
    "fieldName": "file",
    "originalName": "74277A30-5740-4102-A183-697382A4C240.json",
    "encoding": "7bit",
    "size": 1725
  }
}
},
"node": "302df9b0-2dec-11e6-816e-2f924acaff65"
}

我需要从"字段中获取数据"部分,然后将其保存到我的数据库

如果我在这里模糊,请道歉,只是解雇我的评论,我会尽力回答你的问题

1 个答案:

答案 0 :(得分:0)

将此数据作为帖子请求正文发送。 使用内容类型作为application / json。 将此数据接受为动态类型的对象。 使用newtonsoft.json.ConvertTo(........)序列化此对象 并将此序列化对象发送到数据库的Nvarchar或varchar字段。 它会起作用。