将帖子数据作为JSON

时间:2015-08-27 13:29:34

标签: c# .net json forms post

考虑功能

public JsonResult poststuff()
    {
        var form = Request.Form;
        return new JsonResult() { Data = form };
    }

考虑提交的数据(JSON)

    {
        name: "John Doe",
        age: "50"
    }

这是我的问题

有没有办法将帖子数据作为JSON返回?无需将数据拉开并将其插入类型的对象中?

我觉得我一直在网上搜索答案,但却找不到答案......我知道我转向你。

返回数据将优先选择如下:

{     数据:{         姓名:" John Doe",         年龄:50岁     } } 甚至更好 {     姓名:" John Doe",     年龄:50岁 }

甚至可以以简单的方式进行吗?我知道这是我的PHP,但我从来没有成功地在C#.NET中找到答案

作为参考,希望的结果可以在PHP中创建,就像

一样简单
$input_data = json_decode(trim(file_get_contents('php://input')), true);
echo json_encode($input_data);

1 个答案:

答案 0 :(得分:1)

如果您使用表单发布数据,则可以使用[FormCollection][1]类,如下所示:

[HttpPost]
public ActionResult PostStuff(FormCollection formCollection)
{
    Dictionary<string, string> data = new Dictionary<string, string>();

    //If data is POSTed as a form
    foreach (var key in formCollection.AllKeys)
    {
        var value = formCollection[key];
        data.Add(key, value);
    }

    return Json(data, "application/json", JsonRequestBehavior.AllowGet);
}

在这里,我们只是循环遍历从表单POST的集合并将其添加到字典中。然后将此词典传递给JsonResult