public class rates
{
public double USD { get; set; }
public double ZAR { get; set; }
public double EUR { get; set; }
}
是否可以从上面的对象创建一个字典?
Dictionary<string, double> CurrencyRates;
rate类中的上述属性是从Json文件初始化的。
有很多方法可以做到这一点。然而,这里有一个直接的反射方法
给定
var rates = new rates(){EUR = 123,USD = 356,ZAR = 456};
使用
var result = rates
.GetType()
.GetProperties()
.ToDictionary(
x => x.Name,
x => (double)x.GetValue(rates));
foreach (var item in result)
Console.WriteLine($"{item.Key} {item.Value}");
USD 356
ZAR 456
EUR 123