LINQ - podmienka do usporiadavania – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

LINQ - podmienka do usporiadavania – .NET – Fórum – Programujte.comLINQ - podmienka do usporiadavania – .NET – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
yterbium0
Stálý člen
26. 11. 2009   #1
-
0
-

mám StringBuilder riadky, a chcem ho usporiadať podľa nie prvého znaku ale podľa 38 alebo 37, A spraví to tento kod, keď usporiaduvávam všetky podľa 38 znaku.

var sorted = riadky.ToString().Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries).OrderBy(x => x.Substring(38));

result = string.Join(Environment.NewLine, sorted.ToArray());



LINQ neovládam, akurát cháepm čo toto robí, ale potrebujem tam dopkniť podmienku, že :

if(x.SubString(37) = "/")
{
x => x.Substring(38)
}
else
{
x => x.Substring(37)
}

Takýto kod chcem vložiť do OrderBy
Môžete mi to prosím poardiť ako to spraviť, lebo ako som napísal LINQ neovládam skoro vôbec

Nahlásit jako SPAM
IP: 158.195.160.–
Reklama
Reklama
27. 11. 2009   #2
-
0
-

To yterbium : Úplně jednoduše, ale zamysli se nad tím, jestli tam musí být StringBuilder. Ty metody Split a Join se mi tady moc nelíběj, ale třeba to v tvém případě lépe řešit nejde.

var sorted = riadky.ToString().Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries).OrderBy(x =>

{
if(x[37] != "/")
{
return x[37];
}
return x[38];
});
result = string.Join(Environment.NewLine, sorted.ToArray());
Nezkoušel jsem, ale mělo by to fungovat.

Nahlásit jako SPAM
IP: 88.146.85.–
Dušan Janošík | web: djanosik.cz, @djanosik
yterbium0
Stálý člen
7. 12. 2009   #3
-
0
-

díkes,

až teraz sa mi našiel čas k tomu dostať, škoda že neštudujem informatiku, ale nikde na výške C# neučia (aspoň o čom viem).

Fungovalo to rpesne ako som chcel, trochu podmienok tam "dotiahnuť" a bolo hotovo,

Len taká maličkosť ak by to niekto hľadal:
x[37] != "/"

má byť ako CHAR, čiže:
x[37] != '/'


A ešte raz díky

Nahlásit jako SPAM
IP: 158.195.168.–
7. 12. 2009   #4
-
0
-

To yterbium : Jo, pravda. Chybička se vloudila :)

Nahlásit jako SPAM
IP: 88.146.85.–
Dušan Janošík | web: djanosik.cz, @djanosik
H4wk.cz0
Newbie
18. 12. 2009   #5
-
0
-

To yterbium : Minimálně na matfyzu se C# učí. A věřím, že na jiných školách taky.

Nahlásit jako SPAM
IP: 78.128.196.–
http://ksp.mff.cuni.cz - Nauč se opravdu programovat
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 51 hostů

Podobná vlákna

LINQ from from — založil liza

LINQ a DB — založil Jirka

C# použití linq — založil Marek

SQL to LINQ — založil jabo

SQL to LINQ — založil jabo

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý