Come si può eseguire il seguente condizionamento in linea per una stringa [] in C#. Sulla base di un parametro, vorrei includere un set di stringhe ... o no. Questa domanda è un seguito di this one on stackoverflow.C# inline condizionale nella stringa [] array
//Does not compile
bool msettingvalue=false;
string[] settings;
if(msettingvalue)
settings = new string[]{
"setting1","1",
"setting2","apple",
((msettingvalue==true) ? "msetting","true" :)};
Se msettingvalue è vero, mi piacerebbe includere due stringhe "msetting", "vero": altrimenti no strings.
Edit1 Non deve essere una coppia di valori chiave ... e se fosse 5 stringhe di essere (o non essere) aggiunti ... Non pensavo che sarebbe stato che difficile.
(anche ... potrebbe qualcuno con abbastanza rep fare una tag "inline-condizionato" o "condizionale-inline"?)
In base all'esempio del codice, msettingvalue sarà sempre true all'interno dell'istruzione di inizializzazione dell'array. –
FWIW, forse un 'Dictionary' o' KeyValuePair [] '(o ...) è più adatto per l'impostazione di coppie? –
Usa un dizionario, ti stai codificando in un angolo qui dove non c'è motivo di farlo affatto. – BrokenGlass