Ваш код синтаксически неверен, следовательно, ошибка.Но когда вам нужно создать коллекцию элементов, но вы не знаете заранее размер, вы хотите использовать List<T>
вместо массива.Список позволит вам продолжать добавлять элементы.
var results = new List<string>();
while (reader.Read())
{
results.Add(reader["RoleID"].ToString());
}
// results now holds all of the RoleID values in the reader
Вы можете получить доступ к элементам списка через индекс, как в массиве, и можете запросить список с помощью Linq (также как в массиве), еслинеобходимо.
string check = "something";
if (results.Any(item => item.Equals(check)))
{
// results contains the value in check
}
// or use all items that equal check
foreach (var item in results.Where(obj => obj.Equals(check))
{
// do something with each item that equals check
}