Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

C# C# Objects Encapsulation and Arrays Ternary If

Did you include the boolean expression to evaluate?

I copied the exact method that the video on this used to convert the if statement to a Ternary If statement, and i keep getting this error:

"Did you include the boolean expression to evaluate"

The problem for this code doesn't state any sort of boolean statements or evaluation, and I have no idea how to fix this code.

int value = -1;
string textColor = null;

//if (value < 0)
//    textColor = "red";
//    textColor = "green";

return (value < 0) ? (textColor = "red") : textColor = "green";

1 Answer

Steven Parker
Steven Parker
215,372 Points

The way ternaries are typically used (and as shown in the video) is to evaluate an expression and return one of two values. The entire ternary can then be the right-hand side of an assignment. Check the video example again.

Controlling statement execution (like two different assignments) is better done with "if".

And "return" can only be used inside a function.