在C#中创建动态键/值对象

时间:2017-07-19 06:00:15

标签: c#

我对C#很新,并试图掌握对象,列表和字典的概念。我有一个从RTD服务器返回数据的方法。

private object getBalance(RtdClient client)
{

  int count = 5;
  var types = new[] {
    "date",
    "amount",
    "balance"
  };

  String[] balance = new String[count];
  for (int i = 0; i < count; i++)
  {
    var name = types[i];
    var value = Client.getDetails(client, types[i], dateValue.Text);
    balance[i] = value.ToString();
  }

  return balance;
}

它将数据返回为:

balance{string[3]}  string[]

我想要做的是获取以下数据:

  "date": "17 July"
  "amount": "234" 

所以我可以balance.datebalance.amount

目前在displayData方法上,我将其转换为:

string[] arr = ((IEnumerable)balance).Cast<object>()
                             .Select(x => x.ToString())
                             .ToArray();

var outputFields = new[] {
    "dateValue",
    "amountValue",
    "balanceValue"
};

for (var i = 0; i < outputFields.Length; i++)
{
  outputFields[i].Text = quotes[i];
}

我试图避免维护两个不同的数组(outputFields和types)。

如何将数据作为可以循环的键值对获取?

0 个答案:

没有答案