Iam new для LINQ, но я не знаю, что не так с этим фрагментом кода. Все, что я хочу, это сохранить результат запроса в списке массивов, и это дает мне исключение: индекс был вне диапазона. Должен быть неотрицательным и меньше размера коллекции.Использование предложения where с объединением групп в LINQ
var JoinLCandSymp =
(from symp in SymptomsTable.AsEnumerable()
join leftC in LeftChestTable.AsEnumerable() on symp.Field<int>("Symptom_Number") equals leftC.Field<int>("Symptom_Number") into Sgroup
from SF in Sgroup
where SF.Field<int>("Rank") == 1 && SF.Field<string>("Category") == "Pain"
select symp.Field<string>("Symptom_Name")
);
foreach (string val in JoinLCandSymp)
{
GlobalVariables.sympLCWR1Pain.Add(val);
}
Любая помощь действительно была бы полезна. :)
Хорошо, вот еще одна такая же процедура ... что может быть неправильным? Дает то же исключение.
var JoinLCandSymp =
(from symp in SymptomsTable.AsEnumerable()
join leftC in LeftChestTable.AsEnumerable() on symp.Field<int>("Symptom_Number") equals leftC.Field<int>("Symptom_Number")
where leftC.Field<int>("Rank") == 1 && leftC.Field<string>("Category") == "Pain"
// group leftC by symp into SympGroup
select symp.Field<string>("Symptom_Name")
);
foreach (string val in JoinLCandSymp)
{
GlobalVariables.sympLCWR1Pain.Add(val);
}
Мне нужно будет увидеть SQL, который заполняет набор данных. Но без этого что-то имеет значение null: Rank, Category или Sympton_Number. Когда вы пытаетесь получить доступ к столбцу, он не работает. – Joe
The SymptomsTable заполняется, и поэтому LeftChestTable..Rank и Category являются столбцами LeftChestTable..Symptom_Number - это как столбец SymptomsTable, так и LeftChestTable .. и я могу без проблем получить доступ к их столбцам. –
Я получил его, парень ... последний код работает сейчас. Я использовал список нестатических массивов, когда в координации с классом я должен был использовать статический ... плохой: p..thanks anyways –