Avatar billede Driton Seniormester
18. oktober 2012 - 13:43 Der er 7 kommentarer og
1 løsning

ligende metode i c#

I java, kan man hente alle sine personer i en ArrayList i en klasse.
Som ser sådan her ud.

for(Person person : personer)
{
return person;
}

er der i ligende måde man kan gøre det i C#? og desuden så kan man ikke sætte sætte en arraylist til at være en klasse i c#, der skal man bruge en ListItem hvorfor det?
Avatar billede Syska Mester
18. oktober 2012 - 13:50 #1
Du har Generics i .NET ... meget bedre.

List<Person> persons = new List<Person>();

foreach(Person person in persons)
{
// Do something with person here
}

"I java, kan man hente alle sine personer i en ArrayList i en klasse.
Som ser sådan her ud."

.NET har også ArrayList, men lav være med at bruge den.

Håber det giver svar ellers må du lige uddybe lidt hvad du mangler ...

Husk at tilføje:
using System.Collections.Generic;

i toppen.
Avatar billede Driton Seniormester
18. oktober 2012 - 14:02 #2
Tak det gjorde den :D, smid et svar herinde så jeg kan tildele dig dine point
Avatar billede Syska Mester
18. oktober 2012 - 14:14 #3
Svar.

.NET har næsten alt hvad java har ... ofte implementeret på en bedre måde :-)

mvh
Avatar billede Syska Mester
18. oktober 2012 - 14:14 #4
og svar.
Avatar billede Driton Seniormester
18. oktober 2012 - 14:22 #5
Håber du kan hjælpe mig med noget. uden jeg behøver at oprette en ny tråd :D men gør det gerne.

denne stykke kode
List<Logind.Support> support = (List<Logind.Support>)Session["Supporter"];

får jeg fejl ved den siger at jeg ikke kan:
Unable to cast object of type 'Logind.Support' to type 'System.Collections.Generic.List`1[Logind.Support]'.

nogen som har en ide hvorpå jeg kan løse dette problem?
Avatar billede Syska Mester
18. oktober 2012 - 14:49 #6
Ja, fikser det sted hvor du sætter: Session["Supporter"]; til et Support object.

Support != List<Support>

Ergo, du kan ikke cast på den måde.

Udover det, så bør du gøre:

var list = Session["Supporter"] as List<Support>;

if(list != null)
{
// Gør hvad du vil med din liste.
}
else
{
// error handling, could not cast Session["Supporter"] as List<Support>
}
Avatar billede arne_v Ekspert
18. oktober 2012 - 16:31 #7
List<Logind.Support> support = (List<Logind.Support>)Session["Supporter"];

=>

Unable to cast object of type 'Logind.Support' to type 'System.Collections.Generic.List`1[Logind.Support]'.

siger at Session["Supporter"] indeholder en Logind.Support og ikke en List<Logind.Support>, hvilket jo nok skyldes en inkonsistens mellem koden der gemmer og koden der henter med hensyn til hvad indholdet skal vaere.
Avatar billede arne_v Ekspert
18. oktober 2012 - 16:41 #8
Forskellen paa Java og C# er her udelukkende syntaxen for denne type loekke.

import java.util.ArrayList;
import java.util.List;

public class ForList {
    public static void main(String[] args) {
        List<String> lst = new ArrayList<String>();
        lst.add("A");
        lst.add("BB");
        lst.add("CCC");
        for(String s : lst) {
            System.out.println(s);
        }
    }
}

and

using System;
using System.Collections.Generic;

namespace E
{
    public class Program
    {
        public static void Main(string[] args)
        {
            IList<string> lst = new List<string>();
            lst.Add("A");
            lst.Add("BB");
            lst.Add("CCC");
            foreach(string s in lst)
            {
                Console.WriteLine(s);
            }
        }
    }
}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester