Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Hola Amigos!
Quem é mestre em LinQ?
To com um problema. Tenho uma Máscara de Busca com TextBoxes E LisBoxes!
Essa é minha busca no LinQ, porém SEM os ListBoxes:
var offers = offer.GetList().Where(
item =>
(item.Name.ToLowerInvariant().Contains(this.txtName.Text.ToLowerInvariant()) ||
String.IsNullOrEmpty(this.txtName.Text.ToLowerInvariant())) &&
(item.Number.ToLowerInvariant() == this.txtNumber.Text.ToLowerInvariant() ||
String.IsNullOrEmpty(this.txtNumber.Text.ToLowerInvariant())) &&
(item.PONumber.ToLowerInvariant() == this.txtPONumber.Text.ToLowerInvariant() ||
String.IsNullOrEmpty(this.txtPONumber.Text.ToLowerInvariant())) &&
(item.ProjectNumber.ToLowerInvariant() == this.txtProjectNumber.Text.ToLowerInvariant() ||
String.IsNullOrEmpty(this.txtProjectNumber.Text.ToLowerInvariant())) &&
(this.ddlCustomer.SelectedIndex != 0 ?
item.Customer.CustomerID == Convert.ToInt32(this.ddlCustomer.SelectedValue) :
item.Customer.CustomerID == item.Customer.CustomerID)
).ToList<Offer>();
Agora preciso implementar a selecao do ListBox no meio dessa busca, considerando que mais de uma opcao pode ser selecionada.
Pensei em algo mais ou menos assim:
//Aqui crio uma lista de Items selecionados no ListBox
var userContacts = from userContact in this.lstUserContact.Items.Cast<ListItem>()
where userContact.Selected == true
select userContact;
var offers = offer.GetList().Where(
item =>
(item.Name.ToLowerInvariant().Contains(this.txtName.Text.ToLowerInvariant()) ||
String.IsNullOrEmpty(this.txtName.Text.ToLowerInvariant())) &&
(item.Number.ToLowerInvariant() == this.txtNumber.Text.ToLowerInvariant() ||
String.IsNullOrEmpty(this.txtNumber.Text.ToLowerInvariant())) &&
(item.PONumber.ToLowerInvariant() == this.txtPONumber.Text.ToLowerInvariant() ||
String.IsNullOrEmpty(this.txtPONumber.Text.ToLowerInvariant())) &&
(item.ProjectNumber.ToLowerInvariant() == this.txtProjectNumber.Text.ToLowerInvariant() ||
String.IsNullOrEmpty(this.txtProjectNumber.Text.ToLowerInvariant())) &&
//Aqui seria minha busca, usando a Lista criada la em cima, porém da erro de compilacao!
item.UserContacts.Where(userContactItem =>
{
userContacts.Where(userContactListItem => userContactItem.UserID.ToString() == userContactListItem.Value);
})
(this.ddlCustomer.SelectedIndex != 0 ?
item.Customer.CustomerID == Convert.ToInt32(this.ddlCustomer.SelectedValue) :
item.Customer.CustomerID == item.Customer.CustomerID)
).ToList<Offer>();
Como adicionar uma busca de ListBox dentro do meu LinQ?
Carregando comentários...