我需要从我的 CosmosDb 检索以下 JSON,但我认为 C# 代码(适用于简单的 JSON 结构)需要帮助。 响应仅显示
{ RolePermission[0] }
var response = this.client.CreateDocumentQuery<RolePermission>(
UriFactory.CreateDocumentCollectionUri("demo", "RoleMenus"), queryOptions)
.Where(f => f.RoleName == roleName).AsEnumerable().ToArray();
JSON 是:
{
"id": "1",
"RoleName": "Admin",
"Menus": [
{
"Item": "Admin",
"Display": "Admin",
"Granted": true
},
{
"Item": "Users",
"Display": "Users",
"Granted": true
}
],
}
我想要进入的类定义是:
public class RolePermission
{
[DisplayName("Role Name")]
public string RoleName { get; set; }
public List<Menus> Menus { get; set; }
}
public class Menus
{
public string Item { get; set; }
public string Display { get; set; }
public bool Granted { get; set; }
}
我只需要 JSON 的菜单部分
谢谢
最佳答案
根据您提供的数据和代码,它应该返回您需要的列表“菜单” 使用以下查询
var response = this.client.CreateDocumentQuery<RolePermission>(UriFactory.CreateDocumentCollectionUri("demo", "RoleMenus"), queryOptions).Where(f => f.RoleName == roleName).ToList();
确保容器中的 RoleName
字段插入了正确的数据。
关于C# 从 Cosmos db 获取带有数组的 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71224159/