Я использую предварительную версию SpecFlow 3, не уверен, что это имеет значение. В любом случае у меня есть следующая таблица:
| Driving Licences|
| None |
| C |
| CE |
| C1 |
| C1E |
| D |
| DE |
| D1 |
| D1E |
Я хочу получить список строк. Итак, я делаю следующее:
[Then(@"I get the list")]
public void CanSelectOneOrMoreFromThisList(Table table)
{
var values = table.CreateSet<string>();
...
}
Теперь значения представляют собой список из 9 строк, но все они пусты. Я мог бы сделать это вручную с помощью строк таблицы и linq, но задавался вопросом, есть ли что-то в SpecFlow для этого. Пробовал искать, но нашел только примеры для сложных ссылочных типов. Заранее спасибо.





Обычно я использую Linq для преобразования таблицы в такой список:
using System.Linq;
[Then(@"I get the list")]
public void CanSelectOneOrMoreFromThisList(Table table)
{
IEnumerable<string> values = from row in table.Rows select row["Driving Licenses"];
// ...
}
Вы также можете написать var values вместо IEnumerable<string> values.