Ho un modulo che filtra i dati in base a ciò che selezionano.Come si aggiungono le query LINQ tra loro?
Sto cercando di aggiungere le query di linq tra di loro in modo che il risultato finale sia quello che hanno selezionato sullo schermo.
Ecco il mio codice:
private void button_Search_Click(object sender, EventArgs e)
{
using (var model = new SuburbanPortalEntities())
{
var qry = from logs in model.Logs
select logs;
Guid corpid;
if (Guid.TryParse(textBox_CorporationGuid.Text, out corpid))
{
qry = from logs in model.Logs
where logs.CorporationId == corpid
select logs;
}
Guid tokenid;
if (Guid.TryParse(textBox_TokenId.Text, out tokenid))
{
qry = from logs in model.Logs
where logs.TokenId == tokenid
orderby logs.LogDateTime descending
select logs;
}
if (checkBox_DisplayErrors.Checked)
{
qry = from logs in model.Logs
where logs.IsException
select logs;
}
if (checkBox_DisplayWarnings.Checked)
{
qry = from logs in model.Logs
where logs.IsWarning
select logs;
}
dataGridView1.DataSource = qry;
}
}
sto avendo fortuna. L'ultimo qry in è ciò che viene visualizzato sul mio datagridview.
Qualcuno può mostrarmi cosa sto facendo male?
Grazie!
Dalla seconda query, è possibile interrogare dal risultato restituito dalla query precedente. – zsong
Si sta sovrascrivendo la variabile 'qry' con un nuovo risultato ogni volta, non diversamente da' int a = 0; a = 1; ' – sinelaw