无法从散列表中读取键值对
本文关键字:读取 键值对 列表 | 更新日期: 2023-09-27 17:49:33
我正在编写一个specflow来测试一个服务。我正在读取表并将键,值存储在哈希表中。
下面是Feature文件的一个示例:
|Index|Id | Message|
|test1|1 | aa|
|test2|2 | bb |
下面是我从表
中读取数据的方法 public Hashtable GetData(Table table)
{
var data = table.CreateSet<SpecFlowData>();
var hashtable = new Hashtable();
foreach (var currentRow in data)
{
var key = currentRow.Index;
var value = GetValues(currentRow);
hashtable.Add(key, value);
}
return hashtable;
}
这里我试图提取哈希表
中的键和值对 [When(@"the test data is submitted to service")]
public void WhenTheTestDataIsSubmittedService()
{
// the table data is now stored in a Textcontext
var message = TestContext.Messages;
byte? result = null;
foreach (Hashtable entry in message)
{
var values = entry.Values;
// problem area
foreach (Hashtable item in values)
{
var Ids = item["id"];
var messages = item["message"];
// send message to service accepts string,string input
sendMessageResult = client.SendMessageToService((string)appIds, (string)messages);
}
}
}
因为所有的值都有自己的键值对…我试图在第二个循环中访问它,但它没有循环哈希表值的集合。
我不明白为什么我不能在第二个循环中循环所有的值集合
一旦我将哈希表替换为Dictionary,我就可以访问数据了