¿Cómo podría hacer el siguiente condicional en línea para una matriz de cadena [] en C#. En función de un parámetro, me gustaría incluir un conjunto de cadenas ... o no. Esta pregunta es un seguimiento de this one on stackoverflow.C# condicional en línea en cadena [] matriz
//Does not compile
bool msettingvalue=false;
string[] settings;
if(msettingvalue)
settings = new string[]{
"setting1","1",
"setting2","apple",
((msettingvalue==true) ? "msetting","true" :)};
Si msettingvalue es cierto, me gustaría incluir dos cadenas "msetting", "verdadero": de lo contrario no hay cuerdas.
Edit1 No tiene que ser un par de valores clave ... ¿y si fuera 5 cuerdas a ser (o no ser) que se añade ... No pensé que sería que difícil.
(también ... podría alguien con representante suficiente hacer una etiqueta "inline-condicional" o "condicional-inline"?)
Según su muestra de código, msettingvalor siempre será verdadero dentro de esa declaración de inicialización de la matriz. –
FWIW, tal vez un 'Diccionario' o' KeyValuePair [] '(o ...) es más adecuado para establecer pares? –
Usa un diccionario, estás codificando en una esquina aquí donde no hay ninguna razón para hacer esto en absoluto. – BrokenGlass