format de date aaaa-MM-jjthh:mm:ssZ
Je suppose que ce doit être assez simple, mais ne pouvions pas le faire :(.
Dans ce format de l'axe Z est de fuseau horaire.
T est le temps long de patron
Comment pourrais-je avoir une date dans ce format, sauf en utilisant
DateTime dt = DateTime.Now;
Console.WriteLine(dt.ToString("yyyy-MM-ddTHH:mm:ssZ"));
en C#
- Je sais que cette question a été autour depuis 9 ans, mais le a accepté de répondre à de
UtcNow.ToString(s)+Z
est la bonne. ISO8601 est pris en charge par la Aller l'optionToString("O")
. De même à signaler que l'on a accepté la réponse utilise l'UTC valeur de type datetime, qui veut toujours donner le fuseau horaire Z, plutôt que de simplement en utilisant la réelle valeur de type datetime, qui (si Type=Local) peut contenir une heure du fuseau horaire. Envisager une modification de la accepté de répondre?
Vous devez vous connecter pour publier un commentaire.
À l'aide de l'UTC
ISO 8601 (MSDN datetime formats)
La Z est là parce que
Si vous souhaitez inclure un décalage
Deux choses à noter: + ou - est, nécessaire après le temps, mais évidemment + n'apparaît pas sur des nombres positifs. Selon wikipédia, le décalage peut être de +format hh ou +hh:mm. Je l'ai gardé pour quelques heures seulement.
Autant que je sache, RFC1123 (HTTP date, le "u" formateur) n'est pas destiné à donner des décalages de fuseau horaire. Toutes les heures sont destinés à être GMT/UTC.
Sorties:
"o" le format est différent pour DateTime vs DateTimeOffset 🙁
Ma réponse finale est
Look ici à "u" et le "s" de motifs. La première est sans 'T' séparateur, et le second est sans fuseau horaire suffixe.
Seule Ligne de code pour cela.
Une option pourrait être de conversion DateTime pour ToUniversalTime() avant de se convertir à l'aide de la chaîne "o" format. Par exemple,
Il sera de sortie:
En C# 6+ vous pouvez utiliser de la chaîne d'interpolation et de la rendre plus laconique:
Il fonctionne très bien avec Salesforce RESTE de l'API de requête datetime formats
Il renvoie les résultats à partir de Salesforce sans aucun problème.
Vous pouvait séparer les choses, il aurait besoin de plus de code, mais s'il travaille de la façon dont vous l'aimez:
ect.
enfin:
C'est un très audacieux traitement si...