Ich habe ein paar Stellen, wo ich 2 (Nullable) Werte vergleichen muss, um zu sehen, ob sie gleich sind.Vergleichbare Nullwerttypen?
denke ich, es ist etwas im Rahmen sein sollte, dies zu unterstützen, kann aber nichts finden, so stattdessen haben die folgenden:
public static bool IsDifferentTo(this bool? x, bool? y)
{
return (x.HasValue != y.HasValue) ? true : x.HasValue && x.Value != y.Value;
}
Dann im Code ich habe if (x.IsDifferentTo(y)) ...
ich dann ähnliche Methoden für Nullable-Ints, Nullable-Doubles usw. haben
Gibt es keinen einfacheren Weg, um zu sehen, ob zwei Nullable-Typen gleich sind?
Update:
Es stellte sich heraus, dass der Grund, warum diese Methode existiert, weil der Code von VB.Net umgewandelt wurde, wo Nothing = Nothing false zurück (vergleiche zu C#, wobei null == null true zurückgibt) . Der VB.Net-Code sollte stattdessen .Equals...
verwendet haben.
bisschen spät auf dieses, aber ich das Update nützlich gefunden. lief in das gleiche Szenario –