Nach etwas Herumsucherei bin ich auf diesen Blogeintrag gestoßen *click* der uns verrät, dass SharePoint das "Coordinated Universal Time"-Format (UTC) bevorzugt, also Datumswerte in der Form 'yyyy-mm-ddThh:mm:ssZ'.
Das kann ganz einfach durch die Methode .ToString("u") erzielt werden, welches ein Datum in das kulturunabhängige UTC-Format umwandelt.
Der Code des konkreten Falls sieht demnach so aus:
SPFieldDateTime abgabeDatum = (SPFieldDateTime)positionList.Fields["Abgabedatum"];
abgabeDatum.DefaultValue = ((DateTime)properties.ListItem["Abgabedatum"]).ToString("u");
abgabeDatum.Update();
2 Kommentare:
...na das war ja genau das Problem, was ich mit dem Nils diskutiert hatte, schön, dass es geklappt hat *Thumbs up*
Sebastian
Leider ist das so noch nicht ganz vollständig, denn das UTC-Format gilt nur in einer Zeitzone. Hält man sich nicht dort auf, muss vorher noch in UniversalTime konvertiert werden.
abgabeDatum.DefaultValue = ((DateTime)properties.ListItem["Abgabedatum"]).ToUniversalTime().ToString("u");
Liefert den richtigen Timestamp.
Nils
Kommentar veröffentlichen