2017-04-21 1 views
0

Je ne peux pas comprendre ce que je fais mal pour la vie de moi. J'utilise?: Tout au long de la vie de mon projet mais tout d'un coup je continue à me dire "Seulement l'affectation, l'appel, l'incrémentation, la décrémentation et les nouvelles expressions d'objet peuvent être utilisées" mais si je copie et colle la même chose un autre fichier .. Je ne reçois aucune erreur comme ça.C# Opérateur conditionnel - Comment est-ce incorrect?

vrai? "1": "1"; devrait être l'énoncé le plus fondamental qui fonctionne, correct? Je veux dire qu'il le fait déjà ailleurs alors que pourrais-je ne pas comprendre?

Conditional Statement

+6

le compilateur crée une erreur parce que cette expression est inutile, vous ne faites rien avec la valeur que fait-il? changez-le en var pointlessNumber = true? "1": "1" –

+11

C'est une expression, pas une déclaration. – vcsjones

+1

vous devez affecter la valeur à une variable –

Répondre

4

Lorsque vous dites que vous utilisez l'opérateur conditionnel ailleurs & il fonctionne bien peut-être que vous utilisez d'une manière différente de la capture d'écran que vous avez partagé. Je dis cela parce que C# ne vous permettra pas de le faire de la manière que vous avez mentionné: à savoir

true ? "1" : "1"; 

penser de cette façon: opérateur conditionnel est essentiellement un if-else.

if (true) 
    "1"; //does not make sense, it appears to be string but the compiler needs to know what this is exactly 
else 
    "1"; //same comment as above 

Pour vous résumer devez attribuer cette chaîne « 1 » à une & variables alors les choses fonctionnent très bien.

string str = true ? "1" : "1"; 
+0

Fantastique. Cela aide à comprendre exactement ce que je ne comprenais pas. J'apprécie beaucoup, merci. –

+0

Ce que je fais à l'origine dit 'serverColumn.Contains (" primary ")? product.PrimaryProductServer = serveur: product.SecondaryProductServer = server' Je ne sais pas comment aller à une nouvelle ligne dans stackoverflow ici ... En ce qui concerne la condition, je suppose que je ne peux pas le faire comme je le voulais . –

+1

Intéressant. Mais dans ce cas, vous devriez aller avec un simple si-autre – Ankit