18 messaggi dal 21 marzo 2006
Cradle ha scritto:
Beh... ti viene presentata una classe, il PredicateBuilder, che puoi copiare pari pari nel tuo codice e usare per costruire condizioni di where dinamicamente.

Leggilo con attenzione e vedrai che lo capisci

m.

premetto che tale codice è nell'evento _Selecting del Linq Data source
Ti posto il mio codice così forse puoi aiutarmi:

            {
                var res = from p in EOdb.rPlayers
                          join d in EOdb.PlayersDescriptions on p.id_Player equals d.id_Player
                          join c in EOdb.PositionIndexes on p.id_Position equals c.id_Position
                          join cn in EOdb.PositionsNames on c.id_Position equals cn.id_Position
                          where cn.Region == "EN-en" && d.Region == "EN-en" && cn.pName == lb_Position.SelectedItem.Text 
                          && p.Disabled != true && p.id_Nationality == Convert.ToInt32(Session["fPlayer"].ToString())
                          select new { p.id_Player, p.Name, p.Surname, p.Pound, p.Height, p.caricature, cn.pName, p.BirthDate, d.Description };

// fin qui ci siamo ... adesso il problema è fare gli or del contenuto degli items selezionati nel Listbox

                var predicate = PredicateBuilder.False<???>();
                foreach (int i in lb_Position.GetSelectedIndices())
                {
                    string temp = lb_Position.Items[i].Text;
                    predicate = predicate.Or(cn => cn.pName.Contains(temp));
                    //_res = res.Where(cn => cn.pName == lb_Position.Items[i].Text);
                }

//poi devo restituire con e.Result = res;... 

18 messaggi dal 21 marzo 2006
3° giorno dietro a questo problema..
QUalcuno sà dirmi dove posso trovare materiale Linq e più specificamente su come lavorano Concat Union ecc???
18 messaggi dal 21 marzo 2006
Cradle ha scritto:
Ciao,

prova a dare un'occhiata qui
http://www.albahari.com/nutshell/predicatebuilder.aspx

A presto,
m.


ho crato una vista che raggruppa i miei dati .. così evito join e dovrei poter usare il metodo usato nell'articolo

ho fatto così:
                
var res = from p in EOdb.PlayerWDatas select p;
//come lego i dati con il predicatebuilder?? ovviamente così on funge ma non
//reiesco a capire cosa fà di preciso quindi non riesco a intervenire 

var predicate = PredicateBuilder.False<PlayerWData>();
foreach (int i in lb_Position.GetSelectedIndices())
{
                    string temp = lb_Position.Items[i].Text;
                    predicate = predicate.Or(cn => cn.pName == temp);
}
e.Result = predicate;


mi aiutate??
37 messaggi dal 12 marzo 2011
Io ho la stessa problematica con un progetto Visual Studio 2013 in VB.NET.
Dove posso reperire la classe "PredicateBuilder" in VB.NET con qualche esempio di codice.
Non riesco a tradurla in maniera semplice e veloce.

Grazie

Carmine Onofrio

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.