提问者:小点点

正在删除ExpandoObject中的属性


我正在使用API来获取JSON响应的集合,并将它们放入ExpandoObjectresult中。例如,我要删除的属性位于result.data.attributes.image_url中。我不需要它,希望把它从整个收藏中移除。到目前为止我已经试过了:

result.data.attributes.Remove("image_url"); 

但是,我得到的消息是ExpandoObject没有“remove”方法。我到底该怎么做?在python中,我只需使用del关键字来删除数据框架的列。与此等价的C#是什么?


共1个答案

匿名用户

首先强制转换到字典,然后您应该能够调用remove()

var dict = (IDictionary<string, object>) result.data.attributes;
dict.Remove("image_url");

或者是一个多合一的版本,尽管IMO更难阅读:

((IDictionary<string, object>) result.data.attributes).Remove("image_url");