Null auf XElement überprüfen

8

Mein aktuelles Projekt (C # 3.5) hat eine Menge Code wie dieses (elem ist eine Instanz von XElement):

%Vor%

Gibt es eine Möglichkeit, dasselbe zu schreiben, ohne einen Aufruf elem.Element () und ohne Verwendung von Erweiterungsmethoden zu wiederholen? Vielleicht mit Lambdas? (Aber ich kann nicht herausfinden, wie.)

    
lazymf 23.05.2011, 10:51
quelle

4 Antworten

13

XElement hat eine explizite Umwandlung in String (und eine Reihe anderer Typen ), die dies tun rufen Sie tatsächlich .Wert. Mit anderen Worten können Sie dies schreiben:

%Vor%

Ich denke, das wird null zurückgeben, wenn das tatsächliche Element auch null ist

-edit -

bestätigt, Hier ist ein Beispiel:

%Vor%

n wird danach null sein.

    
aL3891 23.05.2011, 10:58
quelle
7

Ja. Du kannst es so schreiben:

%Vor%

Dies ist der Nullkoaleszenzoperator .

Dies bedeutet, dass wenn die linke Seite nicht null ist, dann die linke Seite benutzt wird. Wenn es null ist, dann benutze die rechte Seite.

    
Øyvind Bråthen 23.05.2011 10:52
quelle
2

Es gibt einen großartigen Artikel über das CodeProject für solche Aktionen: Ссылка

%Vor%

Weitere Beispiele finden Sie im CodeProject.

    
VMAtm 23.05.2011 11:03
quelle
2

Ein verrückter ?? -Ansatz:

%Vor%

Würde jedoch eine Erweiterungsmethode bevorzugen.

    
Marcel Jackwerth 23.05.2011 11:05
quelle

Tags und Links