Erro de função de CDate no IIS 6.0, Windows Server 2003

1

Estamos executando serviços da Web do .NET 2.0 ASMX no servidor Windows 2003 no IIS 6.0. Nós migramos um aplicativo herdado do VB 6.0 para o aplicativo .NET 2.0 usando o VB.NET. A função CDATE é usada em muitos lugares e nós não a substituímos pelas funções de data equivalentes do .NET.

Após a migração, o código estava funcionando bem por muitos anos.

Recentemente, começamos a encontrar problemas em nossos servidores de produção nos quais o código abaixo falha:

CDATE ("11 de julho de 2011 21:10:27")

Erro: Conversão da string "11 Jul 2011 21:10:27" para digitar 'Data' não é válida.

Se executarmos um iisreset, o mesmo código começa a funcionar bem.

Isso pode ser devido a algum patch recente para o Windows server / .NET patch? Por favor, ajude-nos a resolver este problema.

    
por gayathri_r15 10.01.2012 / 14:05

2 respostas

1

Recomendação geral: não use IISReset. Recicle apenas o pool de aplicativos com o problema.

Isso não corrigirá o problema, mas causará menos tempo de inatividade ao restaurar o serviço.

    
por 10.01.2012 / 15:03
1

Posso estar errado, mas suspeito que funcione para ALGUNS encontros e não para outros.

Para reconhecer e processar uma data, a função CDate deriva o formato de data ideal das configurações locais do sistema. Verifique as configurações regionais no servidor e verifique se o formato de entrada corresponde a um formato de data do sistema.

Idealmente, corrija isso programaticamente, obtendo um formato datetime da interface IFormatProvider: link

    
por 18.01.2012 / 18:36