Jeg har et par skønhedsproblemer med noget .Net-kode.
Jeg henter nogle datoer fra en SQL Svr (2k), der udskrives til en browser
vha en
Repeater. Koden til dette er:
<%# DataBinder.Eval(Container.DataItem, "Dato") %>
Men datoerne udskrives som
9/2/2002 12:00:00 AM (dette er datoen som den står i SQL-Svr feltet)
Hvor jeg blot gerne ville have det som
02.09.2002
I reg. ASP ville det kunne klares med kode som
Session.LCID = 1030
.... men hvordan i .Net ? Jeg har fået snuset mig frem til, at det _må_
være i
System.Globalization{}, men jeg har problemer med at få det til at virke
korrekt.
Og det sidste problem: Jeg vil godt kunne tænke mig at kunne veksle lidt
imellem
hvordan datoer og tids-angivelser skal udskrives - men hvordan ? Det
svarer til at jeg
gerne vil have udskrevet
2. september 2002 i stedet for 02-09-2002 ... altså fx via vblongdate,
vbshortdate
etc. Jeg koder i c#, så jeg kan ikke klare det ved at inkludere
Microsoft.VisualBasic-
namespace'et .Så vidt jeg kan forstå via en artikel fra 4Guys [1], så
gøres dette ved
at overloade ToString()-metoden. Dette har jeg så forsøgt med koden
<%# DataBinder.Eval(Container.DataItem,"Dato").ToString("dd. MMM. yyyy")
%>
Men compileren brokker sig [2] over, at man ikke kan overloade ToString
()-metoden med
kun ét argument.
Hvor er det jeg går forkert ?
[1]
http://www.aspfaqs.com/aspfaqs/ShowFAQ.asp?FAQID=181
[2] CS1501: No overload for method 'ToString' takes '1' arguments
--
Jesper Stocholm
http://stocholm.dk
http://asp.stocholm.dk
Svar til gruppen og ikke til mig privat pr. email :|