试图接收JSON作为锻炼



我正在尝试将JSON数据引入我的方法。我正在使用Postman发送我的数据。

我的JSON的一个例子是...{" fieldData":{" name":" David"}," Project":20,"版本":1}

我的模型是

public class IncomingFormData
{
    public JObject FieldData { get; set; }
    public int Project { get; set; }
    public int Version { get; set; }
}

我的方法是

    [HttpPost]
    public void SaveFormData(IncomingFormData FieldData)
    {
         string myField = FieldData.FieldData.ToString();
    }

我在fielddata.fielddata中的零,项目和版本显示0。

在我的早期版本中,我有...

我的JSON的一个例子是...

{fieldData:'{" name":" david"}'," project":20,"版本":1}

    [HttpPost]
    public void SaveFormData(string FieldData, int Project, int Version)
    {
         string myField = FieldData;
    }

对我来说,在这个版本中,如果其中一个fieldData对象的值中有一个撇号,则会失败。(根据RFC这是正确的)。

所以,我不得不重写它。

现在,我无法从Postman那里得到任何进来。该方法被称为,但没有任何进来。

Postman已接受应用程序/JSON和Content-type应用程序/JSON SET。

谢谢。

这并不是我真正想做的方式,但是,嘿,它有效。

我的原始方法是在常规MVC控制器中。当我尝试发送JSON时,我会收到错误无法创建Ampact class

但是,创建一个API控制器,几乎具有相同的签名 jobject fieldData ,然后从那里传递到我的常规控制器中,它只是可行的。

以下代码在API控制器中。

    public JsonResult Post([FromBody]JObject FieldData)
    {
        //string myData = FieldData.ToString();
        FormsController form = new FormsController();
        return form.SaveFormData(FieldData);
    }

尝试通过以下:{" incomingformdata":{" fielddata":{" name":" david":" david"}," project":20,"版本:1}}

相关内容

  • 没有找到相关文章

最新更新