PDA

View Full Version : [C#]IEnumerable, elementi e conteggio


RaouL_BennetH
19-12-2011, 15:22
Ciao a tutti :)

Ho una classe dove:


public enum DamageStatus { red, orange, gray, black };

public IEnumerable GetDamageStatusAsEnumerable()
{
String[] strEn = Enum.GetNames(typeof(DamageStatus));
return strEn;
}



Ora, in corrispondenza della web page dove vengono effettuate delle operazioni, il tipo di "danno" viene memorizzato su un database come intero, ad es.:



0 = red;
1 = orange;
etc...



Quello che dovrei fare č di contare quanti red, orange, black... etc.. ci sono per una determinata chiamata.

Grazie :)

RaouL.

nico159
19-12-2011, 18:11
var counter = strEn.GroupBy(x => x).ToDictionary(x => x.Key, x => x.Count());
Console.WriteLine(counter["red"]);

RaouL_BennetH
19-12-2011, 19:59
:ave:

Provo subito a metterla in pratica !

Kralizek
19-12-2011, 22:09
public IEnumerable<string> GetDamageStatusAsEnumerable()
{
String[] strEn = Enum.GetNames(typeof(DamageStatus));
return strEn;
}


usiamoli questi generics ;)

RaouL_BennetH
21-12-2011, 17:42
Prima di tutto grazie sempre per il vostro aiuto !!

Mi sento cosė frustrato... non riesco a mettere in pratica niente !

Allora, ho provato ad implementare i vostri suggerimenti ma ancora non ho capito come fare per "sommare" le corrispondenze trovate..

nel senso che al massimo sono riuscito ad ottenere che:


ad es...
red, red, red -> 1, 1, 1