C# lambda + List<>

Pozdrav!
Zanima me jel je moguce ikako preko lambda izraza provjeriti podatke u listi ali da se ne napise npr puno ime osobe ( Marko ) nego samo npr. prva tri slova i da mi prikaze sve osobe kojima ime pocinje sa ‘Mar’ nesto kao sto je u sql-u LIKE, jel tog ima u lambda izrazu?
pr.:
public List lst = null;
protected void Page_Load(object sender, EventArgs e)
{
lst = OsobaDAL.SelectAll(); //ovdje se strpaju podatki u listu i dolje
//ih prikazem u GridView-u ( gvOsobe )
if (lst.Count > 0)
{
gvOsobe.DataSource = lst;
gvOsobe.DataBind();
}
}
//a ovdje ih pretrazujem po imenu koje upisem u textBox
protected void btnGumb_Click(object sender, EventArgs e)
{
lst = OsobaDAL.SelectAll().FindAll(k => k.Ime.Equals(txtTextBox.Text));
gvOsobe.DataSource = lst;
gvOsobe.DataBind();
}
Mogu jednostavno napraviti da mi se preko gumba ponovo spoji na server i samo drugi sql upit… ali samo me zanima jel se moze preko lambda izraza prekopat po listi ali da ima nesto kao naredba LIKE?
Hvala unaprijed!

Naprimjer ovako:

var lista=new List<string>() {"abc","bdf","abb","123"};

var lista2=lista.Where(x => x.StartsWith("ab"));

mora biti framework 3.0 ili veci.

Iako je ovo neoptimalno, jer ti teoretski dohvatis cjelu bazu u memoriju i radis pretragu tamo. Ali to je vec druga prica.

Ne znam jel mi se zbrejkal VisualStudio malo ali prije mi nije prikazalo StartsWith ili ja nisam primjetil, kaj stvarno sumnjam… Sad sam samo zamjenil k.Ime.Equals sa k.Ime.StartsWith i sve radi. I da, znam da dohvatim tu cijelu tablicu :), to sam i htio, ali…hvala na pomoci.


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja