我需要获取JSON
{
Name: "xyz",
Roles: [{"Id":1,"Name":"User"},{{"Id":2,"Name":"Mod"}]
}
我有一个角色类
public class Role
{
public int Id {get;set;}
public string Name {get;set;}
}
var roles = db.Role.ToList();
我正在尝试这种方式:
select new { Name: "xyz", Roles = roles}
但这会导致错误
在此上下文中仅支持原始类型或枚举类型
答案 0 :(得分:2)
使用JSON序列化程序将对象序列化为JSON。 https://www.newtonsoft.com/json
var roles = ...
var jsonString = JsonConvert.SerializeObject(roles);
答案 1 :(得分:0)
我已经尝试过了,并且可以正常工作。
var items = new List<Role>();
items.Add(new Role() { Id = 1 , Name = "Admin" });
var username = "test";
var newOvj = new { username = username, roles = items };
var stringdata = Newtonsoft.Json.JsonConvert.SerializeObject(newOvj);