2008-09-03 14 views
5

Czy istnieje jedno zdanie lub jeden sposób linii, aby osiągnąć coś takiego, gdzie łańcuch s jest zadeklarowany ORAZ przypisano pierwszą wartość niepustą w wyrażeniu?Jaki jest ekwiwalent C# dla Oracle PL/SQL COALESCE?

//pseudo-codeish 
string s = Coalesce(string1, string2, string3); 

lub, bardziej ogólnie,

object obj = Coalesce(obj1, obj2, obj3, ...objx); 

Odpowiedz

2

?? Operator.

string a = nullstring ?? "empty!"; 
14

Jak powiedział Darren Kopp.

Wyciągu

object obj = Coalesce(obj1, obj2, obj3, ...objx); 

Może być napisane tak:

object obj = obj1 ?? obj2 ?? obj3 ?? ... objx; 

mówiąc innymi słowy:

var a = b ?? c; 

jest równoważna

var a = b != null ? b : c; 
Powiązane problemy