Avatar billede jriff Nybegynder
10. september 2005 - 11:07 Der er 3 kommentarer og
1 løsning

Tre hurtige

Hej Alle!

Jeg har lige tre hurtige spørgsmål:

1) Hvad er forskellen på at skrive:
  <%# DataBinder.Eval ... %>
og
  <% =DataBinder.Eval ... %>

2) Jeg henter et felt fra en Access-DB af typen Date/Time og dette felt indeholder både en dato og et tidspunkt ("19-04-2000 19:28:00"). Jeg gerne vil splitte dette felt op i to så jeg har en streng med datoen og en streng med tidspunktet. How to do?

3) Hvis jeg gerne vil tage feltet fra (2) og lave det til formatet: 19. september 2000 - kan man så gøre det automatisk?
Avatar billede snepnet Nybegynder
11. september 2005 - 18:55 #1
hej jriff :o)

1)
Det første er et typisk databindingsudtryk, der kaldes i forbindelse med databind.
Det andet er bare en inline kodesektion hvor du kan skrive det kode du vil (inline kode vil jeg ikke anbefale).

2)
String.Split(somechar) kan bruges, og hvis du har det i en string på den for du har skrevet vil du kunne:

string[] dateandtime = original.Split(' ');
så har du datoen i
string[0]
og tidspunktet i
string[1]

Men det er vanligvis en bedre idé at arbejde på datatimes, og ikke strings.

3)
Hvis du har en DateTime har du gode muligheder for at arbejde med den mht. formatering:

prøv det her:
DateTime dt = DateTime.Now;
Response.Write(dt.ToString());
Response.Write("<br>");
Response.Write(dt.ToString("D"));
Response.Write("<br>");
Response.Write(dt.ToString("dd-MM-yyyy"));
Response.Write("<br>");

og du kan også lave den slags numre i databindingsudtryk.

mvh
Avatar billede jriff Nybegynder
17. september 2005 - 13:09 #2
Hvor er det bare godt! Lige et par spørgsmål:

1) Hvad gør '#' helt præcist?
2 og 3) Det er en rigtig god idé med DateTime - det virker bare perfekt og meget nemmere end i ASP. Hvordan bruger man disse i databindingsudtryk? Det kan jeg ikke lige overskue.

Og smid så lige et svar så du kan få point :-)
Avatar billede snepnet Nybegynder
19. september 2005 - 15:34 #3
# er en angivelse af at det er et databindingsudtryk, hvilket medfører at koden bliver processeret i forbindelse med et kald til DataBind().

har du f.eks. en DataTable som du databinder til, og vi siger at du har et felt i tabellen "SomeDateTime" - kan du databinde som følger:

f.eks.

<asp:Label id="lblDateTime" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.SomeDateTime") %>'></asp:Label>

hvis du bruger version 2.0, er syntaksen enklere :
<asp:Label id="lblDateTime" runat="server" Text='<%# Eval("SomeDateTime") %>'></asp:Label>

du kan snildt udvide din deklaretive databindingskode til f.eks. at formattere returværdien fra Eval ol. men har du f.eks. bundne kolonner i et datagrid, har de direkte properties til den slags, så det er lidt afhængigt af hvad du sidder med.

mvh
Avatar billede snepnet Nybegynder
19. september 2005 - 15:35 #4
hov - og et svar :o)
mvh
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