Toon posts:

[VB.NET] Datumtijd veld en weekday functie en Win2003

Pagina: 1
Acties:
  • 280 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik heb een VB.NET applicatie draaien... die gebruik maakt van een webservice...

Deze webservice heeft altijd gedraaid op een Windows 2000 AS machine met
IIS 5.5. Deze is echter vervangen voor een Windows 2003 ES met IIS6.0

Nu draait mijn webservice in principe perfect op de nieuwe server. BEHALVE
de Weekday functie. Het programma stuurt op een bepaald punt een datum/tijd
veld door naar de webservice (bijvoorbeeld "15-08-2005 12:00")...

Voorheen pikte de weekday functie netjes de weekdag uit deze string. Nu
dus niet meer. Als ik de notering handmatig verander in het Amerikaanse
systeem ("2005-08-15 12:00") ... dan slikt de functie het wél!

De datum/tijd, regional settings etc. Zijn van de oude server en de nieuwe
identiek. Toch wil de functie alleen de amerikaanse notering slikken. En dat is
geen optie.

Zie ik een instelling op de Windows 2003 server over het hoofd? Die deze
ongein kan veroorzaken! Ik wil namelijk géén code veranderen om het probleem
te fixen. In principe moet er toch een oplossing zijn die géén code aanpassingen
vereist. Maar wat!

(even voor de goede orde, er is dus niets veranderd in de code. Na de migratie naar een andere server is het probleem zich voor gaan doen. De volgende code werkt dus niet meer.
Startdatum en einddatum zijn dus de var's in de vorm van een String.

code:
1
2
  WeekdagSTART = Weekday(startdatum)
  WeekdagEIND = Weekday(einddatum)

  • whoami
  • Registratie: December 2000
  • Laatst online: 11:43
Waarom maak je geen gebruik van de DayOfWeek property van de DateTime structure ?
code:
1
startdatum.DayOfWeek


Da's imho zowiezo veel netter ipv gebruik te maken van een VB - specifieke method.

https://fgheysels.github.io/


  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Waarom geef je ze dan als string mee? Je kan beter gewoon een DateTime object gebruiken dan heb je ook geen problemen met de Locale.

Waarschijnlijk kan je ergens in een config file ( web.config/machine.config/app.config ) de locale van de applicatie aanpassen.
edit:

te laat

[ Voor 5% gewijzigd door Woy op 15-08-2005 18:51 ]

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • whoami
  • Registratie: December 2000
  • Laatst online: 11:43
rwb schreef op maandag 15 augustus 2005 @ 18:50:
Waarom geef je ze dan als string mee? Je kan beter gewoon een DateTime object gebruiken dan heb je ook geen problemen met de Locale.
Idd, een datum is een datum, en geen string.

https://fgheysels.github.io/


Verwijderd

Topicstarter
Een datum is inderdaad een datum. Maar ik had géén zin om de code te veranderen.
Het programma werkt immers prima.

Standaard staan de globalization waardes in machine.config op:
(de standaard instellingen van de webserver dus)

culture="[Culture]" - default Thread.CurrentCulture
uiCulture="[Culture]" - default Thread.CurrentUICulture

Door in de web.config (van de appplicatie) de volgende waarden bij
Globalization toe te voegen is het gehele 'probleem' in een keer opgelost.

<globalization
culture="nl-NL"
uiCulture="nl-NL"
/>

(dit zorgt dus voor dat de tijd in de nederlandse weergave wordt getoond)

  • whoami
  • Registratie: December 2000
  • Laatst online: 11:43
Hmm, tja, dat is geen oplossing, maar een work-around. :P

https://fgheysels.github.io/


Verwijderd

Topicstarter
whoami schreef op dinsdag 16 augustus 2005 @ 11:44:
Hmm, tja, dat is geen oplossing, maar een work-around. :P
Ehmmm... O-)
Work-around / semi-oplossing :)
Pagina: 1