[英]Convert array of objects with string property to an array of strings in c#
我正在尝试将具有字符串属性的对象数组转换为字符串数组。
例如:
"temperature_controlled_transport": [
{
"data": "0"
},
{
"data": "test"
}
]
应该变成:
"temperature_controlled_transport": ["0", "1"]
我尝试使用以下代码:
TemperatureControlledTransport = Array.ConvertAll(pimproduct.Values.TemperatureControlledTransport, x => x.Data)
但是当 object 为 null 时,这不起作用并抛出异常。 如何使用 null 值进行这项工作?
此外,这段代码在 object 的创建中,所以我不能使用 if 块:
SHEQdata = new SHEQdata
{
TemperatureControlledTransport = Array.ConvertAll(pimproduct.Values.TemperatureControlledTransport , x => x.Data)
}
此外,我必须使用约 40 个属性来执行此操作,所以如果有更好的方法,请告诉我:)
谢谢!
使用空合并运算符怎么样?
TemperatureControlledTransport = Array.ConvertAll(pimproduct.Values.TemperatureControlledTransport ?? new TemperatureControlledTransport[] { }, x => x.Data)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.