2016-12-20 2 views

Antwort

1

Dies ist in NodaTime derzeit nicht vorhanden und existiert auch nicht als an option für die eingebauten Objekte DateTime und DateTimeOffset.

Wahrscheinlich das Beste, was Sie tun könnten, ist zwei Muster zu erstellen und fügen Sie einige Logik für die Verwendung hinzu.

var p1 = LocalTimePattern.ExtendedIsoPattern; 
var p2 = LocalTimePattern.CreateWithInvariantCulture("HH:mm"); 

// formatting 
LocalTime t = // your input 
var p = t.Second == 0 && t.TickOfSecond == 0 ? p2 : p1; 
string s = t.Format(p); 

// parsing 
string s = // your input 
var result = p1.Parse(s); 
if (!result.Success) 
    result = p2.Parse(s); 
if (!result.Success) 
    // throw some exception, etc. 
LocalTime t = result.Value; 
+0

Beachten Sie, dass der Code wie folgt für die Analyse ist bereits vorhanden ist, aber jetzt intern: https://github.com/nodatime/nodatime/blob/master/src/NodaTime/Text/Patterns/CompositePattern.cs Wir können expose es irgendwann ... –

Verwandte Themen