Esto también se conoce como "en línea si", o como se ve arriba del operador ternario. https://en.wikipedia.org/wiki/%3F:
Se usa para reducir el código, aunque no se recomienda usar muchos de estos en una sola línea, ya que puede dificultar el mantenimiento del código. Imagínese:
a = b?c:(d?e:(f?g:h));
y se podía ir en un rato.
termina básicamente lo mismo que escribir:
if(b)
a = c;
else if(d)
a = e;
else if(f)
a = g;
else
a = h;
En su caso, "cadena RequestURI = _apiURL + "e =" + OperationURL [0] + ((OperationURL [1] =="? GET ")? GetRequestSignature():" ");"
también se puede escribir como: (omitiendo la persona, ya que es una cadena vacía)
string requestUri = _apiURL + "?e=" + OperationURL[0];
if((OperationURL[1] == "GET")
requestUri = requestUri + GetRequestSignature();
o como esto:
string requestUri;
if((OperationURL[1] == "GET")
requestUri = _apiURL + "?e=" + OperationURL[0] + GetRequestSignature();
else
requestUri = _apiURL + "?e=" + OperationURL[0];
Dependiendo de su preferencia/el estilo de código de su jefe dice a usar
value == someBooleanExpression –
@YuZhang: no, es correcto. Ejemplo: valor de cadena = 1 == 2? "Alfa Beta"; -> value contendrá "Beta" –