Azure函数:如何从也是关键字的键中提取值?

时间:2018-08-16 20:55:02

标签: c# json azure-functions

我有一个azure函数(webhook),它接收以下JSON。

[ 
    { "email": "example@test.com", "event": "processed"} , 
    { "email": "example@test.com", "event": "deferred"} ,
    { "email": "example@test.com", "event": "open"}
]

我想解析JSON并将单个项目添加到azure表中。

当我尝试读取单个项目的值时,我在item.event上遇到错误(我想是因为event是关键字吗?)

string jsonContent = await req.Content.ReadAsStringAsync();
dynamic data = JsonConvert.DeserializeObject(jsonContent);

foreach (var item in data)
{
    outputTable.Add(
    new EventMsg()
    {
        email = item.email,
        eventType = item.event
    });
}

有什么办法解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

您可以在关键字前面使用@来将其视为标识符:

eventType = item.@event

或者,我怀疑您可以使用索引器:

eventType = item["event"]

...但是您需要检查一下。