Avatar billede area404 Nybegynder
16. oktober 2008 - 16:10 Der er 15 kommentarer og
1 løsning

Udskriv data - simpelt

Hey,

Når jeg skriver noget kode i C# forstår jeg ikke helt hvordan man overfører det til en aspx side.
eks:
En liste over filer.
DirectoryInfo dirInfo = new DirectoryInfo(Server.MapPath("/fromphone/"));

Hvordan udskriver jeg listen på siden, som ganske almindelig tekst og med en repeater?

Vh Ron
Avatar billede arne_v Ekspert
16. oktober 2008 - 16:19 #1
Du gemmer data f.eks. i en collection og saetter repeater data source til den.
Avatar billede area404 Nybegynder
16. oktober 2008 - 16:23 #2
hvordan vil det se ud? kan man evt. lave en array hvor filnavne ligger i?
Avatar billede area404 Nybegynder
16. oktober 2008 - 16:54 #3
jeg er kommet frem til dette, som ikke virker:

        ArrayList values = new ArrayList();
        DirectoryInfo dirInfo = new DirectoryInfo(Server.MapPath("/fromphone/"));
        values.DataSource = dirInfo.GetFiles("*.*");
        Repeater1.DataSource = values;
        Repeater1.DataBind();

fejl: CS0117: 'System.Collections.ArrayList' does not contain a definition for 'DataSource'
Avatar billede arne_v Ekspert
16. oktober 2008 - 17:00 #4
values.DataSource = dirInfo.GetFiles("*.*");

skal erstattes af noget hvor du add'er filenavnene til values
Avatar billede area404 Nybegynder
16. oktober 2008 - 17:28 #5
noget ala:
for each file in folder
values.add(dirInfo.GetFiles("*.*"));
??
Avatar billede arne_v Ekspert
16. oktober 2008 - 17:38 #6
Snarere:

foreach(FileInfo fi in dirInfo.GetFiles("*.*")
{
  values.Add(fi.Name);
}
Avatar billede area404 Nybegynder
16. oktober 2008 - 18:32 #7
Ok, hvordan skriver man det så ud på aspx?
Avatar billede arne_v Ekspert
16. oktober 2008 - 18:42 #8
Med en helt almindelig repeater.
Avatar billede arne_v Ekspert
16. oktober 2008 - 18:43 #9
noget a la:

<form runat=server>
    <table border>
        <asp:Repeater id="Repater1" runat="server">
            <ItemTemplate>
                <tr>
                <td><%# DataBinder.Eval(Container.DataItem, "Name") %></td>
                </tr>
            </ItemTemplate>
        </asp:Repeater>
    </table>
</form>
Avatar billede arne_v Ekspert
16. oktober 2008 - 18:44 #10
Hm.

values.Add(fi.Name);

skal nok vaere:

values.Add(fi);

for at matche det.
Avatar billede area404 Nybegynder
16. oktober 2008 - 18:56 #11
Virker ikke, men forstår ikke helt hvordan det snakker sammen. Jeg skal vel et sted angive at mit data skal udskrives til en repeater?
Avatar billede arne_v Ekspert
16. oktober 2008 - 19:12 #12
Det ordner:

Repeater1.DataSource = values;
Repeater1.DataBind();
Avatar billede area404 Nybegynder
16. oktober 2008 - 19:17 #13
yes, så giver det mening :-)
Tak for hjælpen! Svar for point?
Avatar billede arne_v Ekspert
16. oktober 2008 - 19:27 #14
kommer her

fik du det til at virke ?
Avatar billede area404 Nybegynder
16. oktober 2008 - 20:53 #15
Yeps! er stadig ny til .net .. en hel anden verden end asp
Avatar billede arne_v Ekspert
16. oktober 2008 - 21:00 #16
Ja. Der er kun 3 bogstaver til fælles i navnet og ikke noget kode !
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