有没有更好的方法可以将一个对象列表“投射”到另一个对象?

时间:2019-04-02 22:08:59

标签: c# list casting .net-3.5

我正在尝试找出是否有更好的方法来编写所附代码。我有一个对象设备列表(设备),该对象继承自另一个对象设备库。我有一个要“广播”到列表设备的DeviceBase列表(personInfo.devices)。

我也仅限于.net 3.5。

if (personInfo != null)
            {
                if (personInfo.devices.Count != 0)
                {
                    Devices = new List<Device>();

                    for (int i = 0; i < personInfo.devices.Count; i++)                                      //Look for a better way
                    {
                        Devices.Add((Device)personInfo.devices[i]);
                    }
                }

            }

我的目标是在DeviceBase中使用DeviceBase所不具备的其他方法(因为它仅用于反序列化JSON)。

我只是觉得有更好的方法。虽然附件很短,但我相信它可以更短。

1 个答案:

答案 0 :(得分:2)

Devices = personInfo.devices.Cast<Device>().ToList();