返回字符串以及 Json 中的列表数据作为输出

Posted

技术标签:

【中文标题】返回字符串以及 Json 中的列表数据作为输出【英文标题】:returning string along with List data in Json as output 【发布时间】:2021-12-27 17:43:55 【问题描述】:

我有一个控制器方法接受两个参数。此方法用于检索与通过参数传递的 ID 对应的特定数据行。我必须将返回类型值中的另一个参数与检索到的数据一起发送。我该怎么做?

public JsonResult  GetById(int? id, string message)  

    var data = (from z in db.ProdModels 
                where z.FirmId == id
                select z).ToList();
    //data.Add();
    return Json(data, JsonRequestBehavior.AllowGet);

我必须用JSON returned data 返回string message。可能吗?有什么方法可以将字符串与Json 数据一起返回?

【问题讨论】:

【参考方案1】:

试试这个

return new JsonResult( new data=data, message=message);

或者我通常更喜欢

public ActionResult  GetById(int? id, string message)  

    if(id==null) return BadRequest();

    var data = (from z in db.ProdModels 
                where z.FirmId == id
                select z).ToList();
    return Ok( new data=data, message=message );
    

或者如果你使用的是旧的 Mvc 版本

 var result= new 
  
            Message = message,
            Data = data
   ;
 return Json(result, JsonRequestBehavior.AllowGet);

【讨论】:

return Ok 是什么意思,我认为我们必须使用JsonRequestBehavior.AllowGet 作为我的要求。

以上是关于返回字符串以及 Json 中的列表数据作为输出的主要内容,如果未能解决你的问题,请参考以下文章

如何在ajax返回时解析字符串的JSON列表?

Php从json返回数组,但我需要数据作为字符串

我想将字符串列表转换为字典列表

如何将JSON字符串格式化输出

Laravel查询以输出json数据作为选择列表。如何修改现有代码以连接两个值

使用 Swifty 在 Swift 中将 JSON 作为字符串返回