【问题标题】:How to create response from dictionary?如何从字典创建响应?
【发布时间】:2016-12-08 12:49:56
【问题描述】:

我正在尝试从字典中创建以下响应:

['Employee1'] : List of skills

代码:

public class Skills
{
   public string Skill {get;set;}
}
var skills=FetchSkills(); 
var dictionary = new Dictionary<string, List<Skills>>();
dictionary.Add('Employee1',skills);

现在我正在尝试创建以下响应:

'Employee1' =
 {
    {"skill":"skill1"},{"skill":"skill2"},{"skill":"skill3"}
 }

我希望在我的最终回复中骆驼式的技能属性

这就是我试图创建响应但没有得到如何创建预期响应的方式:

return Json(dictionary.Select
(

), JsonRequestBehavior.AllowGet);

【问题讨论】:

  • 只返回字典。它将序列化为您想要的格式
  • @Nkosi:我想要我的驼峰技能属性。驼峰技能属性如何??
  • Skill 属性的Skills 类中添加[JsonProperty("skill")] 属性
  • @Nkosi: 你能告诉我如何使用 linq 从字典中创建预期的响应,因为这样做会影响其他地方,所以我只想要这种方法
  • 预期的响应是否应该是一个数组?还要检查最后评论中关于如何使用属性的链接

标签: c# .net asp.net-mvc linq


【解决方案1】:

给定类

public class Skills {
   [JsonProperty("skill")]
   public string Skill {get;set;}
}

并像这样使用

var skills=FetchSkills(); 
var dictionary = new Dictionary<string, List<Skills>>();
dictionary.Add('Employee1',skills);

return Json(dictionary, JsonRequestBehavior.AllowGet);

应该产生

{
   "Employee1":[
       {"skill":"skill1"},{"skill":"skill2"},{"skill":"skill3"}
   ]
}

【讨论】:

  • 感谢您的回答和您的努力,但您能告诉我使用 linq 创建预期的响应吗? (只是为了我的学习目的)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多