猿问

反射:获取在参数对象中实现接口的所有属性

我有一个类,其中包含许多其他类的对象:


public class Rootobject

{

    public USD USD { get; set; }

    public CAD CAD { get; set; }

    public EUR EUR { get; set; }

    public AED AED { get; set; }

    public AFN AFN { get; set; }

    public ALL ALL { get; set; }

}

这些类中的每一个都实现了一个名为ICurrency; 该ICurrency接口有一个名为“符号”这样的字符串属性:


public class EUR : ICurrency 

{/*code logic*/}

最后我有一个将RootObject实例作为参数的方法;


public object Add22(Rootobject rootobject)

{}

我需要获取在rootobject变量中传递的所有实例的“符号”属性的所有值。


我认为这可以通过反射轻松完成,方法是创建一个列表ICurrency并添加其中的所有对象,然后循环遍历它。


我对吗?如果是的话;那么如何制作呢?或者有更好的方法?


素胚勾勒不出你
浏览 220回答 1
1回答
随时随地看视频慕课网APP
我要回答