Jag har en DataSet med massa nummer i mellan 1 -35. Liknande Det här kanske kan ge en ledtråd, visserligen VB.NET men ändå... Dina siffror kan inte ligga "direkt" i DataSetet utan ligger i en Table. Nu antar jag att du bara har en tabell inläst samt att den bara har en kolumn där alla siffrorna står. I så fall fungerar följande: Så här ser min dataset ut. Jag vill räkna samman hur många det finns det finns av ett nummer i hela tabellen ( detta är bara en demo. Jag vet att samma nummer kan förekomma flera gånger per rad. Men det skall fixas sen )Linq summa
Nu skulle jag vilja få ut hur många det finns av varje nummer. Tex nummer 3 finns 5 ggr.
hur skulle det se ut i Linq?Sv: Linq summa
<code>
var ds = GetDataSet();
for(byte i = 1; i < 36; i++)
{
var antal = ds.table.Count(o => o.Col.Equals(i));
Response.Write("Det finns " + antal + " av " + i);
}
</code>
Inte säkert att det fungerar till 100%, men liknande. Du förstår nog principen :)Sv: Linq summa
http://msdn.microsoft.com/en-us/vbasic/bb738016.aspx#countgrpSv: Linq summa
<code>
var q = from number in ds.Tables[0].AsEnumerable()
group number by number[0] into numberGroup
select new
{
nr = numberGroup.Key,
count = numberGroup.Select(x => x).Count()
};
</code>Sv:Linq summa
<code>
Random rnd = new Random();
DataSet ds = new DataSet();
DataTable dt = new DataTable("LottoNumer");
ds.Tables.Add(dt);
DataColumn dc1 = new DataColumn("nr1");
DataColumn dc2 = new DataColumn("nr2");
DataColumn dc3 = new DataColumn("nr3");
DataColumn dc4 = new DataColumn("nr4");
DataColumn dc5 = new DataColumn("nr5");
DataColumn dc6 = new DataColumn("nr6");
DataColumn dc7 = new DataColumn("nr7");
dt.Columns.Add(dc1);
dt.Columns.Add(dc2);
dt.Columns.Add(dc3);
dt.Columns.Add(dc4);
dt.Columns.Add(dc5);
dt.Columns.Add(dc6);
dt.Columns.Add(dc7);
for (int i = 0; i < 7; i++)
{
DataRow dr = dt.NewRow();
dr["nr1"] = rnd.Next(1, 35);
dr["nr2"] = rnd.Next(1, 35);
dr["nr3"] = rnd.Next(1, 35);
dr["nr4"] = rnd.Next(1, 35);
dr["nr5"] = rnd.Next(1, 35);
dr["nr6"] = rnd.Next(1, 35);
dr["nr7"] = rnd.Next(1, 35);
}
</code>Sv:Linq summa
En slumpad rad á 7 nummer. Nu vill jag få reda på hur många ettor tvåor ..... 36or det finns i tabellen.