2011-04-02 12 views
13

tengo una cita en JavaScript y su valor está llegando como estomejor manera de convertir la fecha JavaScript hasta la fecha .NET

Fri Apr 01 2011 05:00:00 GMT + 0530 (Hora estándar de India) {}

Ahora, ¿cuál es la mejor manera de convertir la fecha a la fecha .NET. Tenga en cuenta que mis usuarios del lado del cliente pueden estar en cualquier parte del mundo. Tendré la fecha a partir de ahí ahora mi necesidad es convertirlo a la fecha .NET. me puedes ayudar ?

Respuesta

23

duplicado eventual de la pregunta respondida aquí: Javascript date to C# via Ajax

Si quieres, hora local, al igual que usted está mostrando en su pregunta la siguiente lo haría.

DateTime.ParseExact(dateString.Substring(0,24), 
           "ddd MMM d yyyy HH:mm:ss", 
           CultureInfo.InvariantCulture); 

Si usted está buscando la hora GMT, haciendo un dateObject.toUTCString() en Javascript en su navegador antes de enviarlo al servidor, lo haría.

+0

+1 nice ... Estaba buscando una cadena de formato exacto pero más tarde abandoné esa idea y elegí AddMilliseconds. :) –

+0

Por favor, dígame el formato exacto que debo usar .. –

+0

@Rocky - editando la respuesta sobre cómo hacer que funcione. – Naraen

0

autorización aquí tratar esta función sencilla que convertirá su `doble 'representación de su marca de tiempo Unix

public static DateTime ConvertFromUnixTimestamp(double timestamp) 
{ 
    DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, 0); 
    return origin.AddMilliseconds(timestamp); 
} 
12

Conversor JavaScript en UTCString del lado del cliente:

var testDate = new Date().toUTCString(); 

Analízalo desde el código C# (puedes recuperar la fecha js a través de la llamada al servicio web).

DateTime date = DateTime.Parse(testDate); 
0

Ampliando @ respuesta de Naraen, mi fecha de JavaScript fue en el siguiente formato:

Thu Jun 01 2017 04:00:00 GMT-0400 (Eastern Standard Time) 

que requirió dos minúsculas d's para el día (dd) para la conversión a trabajar para mí en C# . Ver la actualización al código de @ Naraen:

DateTime.ParseExact(dateString.Substring(0,24), 
          "ddd MMM dd yyyy HH:mm:ss", 
          CultureInfo.InvariantCulture); 
Cuestiones relacionadas