Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

C# Lambda izraz - sta znači?

[es] :: Ostali programski jezici :: C# Lambda izraz - sta znači?

[ Pregleda: 5279 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

azzpoz

Član broj: 300637
Poruke: 96



+1 Profil

icon C# Lambda izraz - sta znači?08.11.2014. u 18:15 - pre 113 meseci
Ako može neko da detaljnije objasni šta znači lambda izraz(C#/ADO.NET/Entity Framework, LINQ) =>

Prilikom kreiranja kolone preko koda, zašto je c => c.String();
Zašto c slovo?

Code:
 public override void Up() 
        { 
            AddColumn("dbo.Blogs", "Url", c => c.String()); 
        } 


ILI

         var suma = lista.Where(p => p > 20).Sum();



Opčenito, kako da bolje razumijem korištenje lambda izraza?
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: C# Lambda izraz - sta znači?08.11.2014. u 18:22 - pre 113 meseci
Lambda je drugi nacin da se napise funkcija (i da joj se pri tome ne da naziv).

c => c.String()

je isto sto i:

function string SomeFunctionName<T>(T c)
{
return c.String();
}

Isto tako p => p> 20
je isto sto i:

function bool SomeOtherFunctionName<T>(T p)
{
return (p > 20);
}


I, kao sto i funkcija moze imati vise parametara, i lambda moze takodje:
(a, b) => a+b;

A isto tako i vise operacija:
(a, b) =>
{
if (a > b)
return a;
else
return b;
}
 
Odgovor na temu

azzpoz

Član broj: 300637
Poruke: 96



+1 Profil

icon Re: C# Lambda izraz - sta znači?08.11.2014. u 20:56 - pre 113 meseci
Da li npr. Visual Studio "sam" generiše slova kao npr. c => c.String(), da li je slovo uopšte bitno i možemo li staviti slovo koje želimo?



Izraz AddColumn("dbo.Blogs", "Url", c => c.String()); sam pronašao u kodu kada sam pravio "model baze podataka" - Entity Framework i on postavlja naziv kolone u tip "string".

Kada bi smo "prevodili našim jezikom" izraz AddColumn, da li može da znači kao = postavi kolonu u šemu (dbo) u tabelu (Blogs) s nazivom (Url) koja vraća string, tj. tipa je string?
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: C# Lambda izraz - sta znači?09.11.2014. u 09:42 - pre 113 meseci
Citat:
Shadowed:
Lambda je drugi nacin da se napise funkcija (i da joj se pri tome ne da naziv).

Hmm, nisam radio sa lambdama u C# (na svu sreću zbrisao sam iz tog voza na vreme), ali lambde svakako nisu isto što i funkcije. Mislim, liče, ali za razliku od funkcija, čuvaju originalni scope u kome su definisane.

@azzpoz: slovo nije bitno, to je zapravo ime argumenta (odn. lokalne promenljive) koju lambda koristi.
 
Odgovor na temu

[es] :: Ostali programski jezici :: C# Lambda izraz - sta znači?

[ Pregleda: 5279 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.