Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

C# C# Basics (Retired) Perform if / else

I don't get why this code is wrong

I can't seem to tell why the complier is saying this code is incorrect. As I am looking at it, it looks right and I can't understand what the complier means

StudentsCode.cs(15,57): error CS1010: Newline in constant StudentsCode.cs(16,0): error CS1525: Unexpected symbol }', expecting)' or `,' StudentsCode.cs(16,1): error CS1002: ; expected Compilation failed: 3 error(s), 0 warnings

CodeChallenge.cs
string language = Console.ReadLine();

if(language == "C#")
{
  System.Console.WriteLine("C# Rocks!");
}
else 
{
    System.Console.WriteLine("language + \"is not C#.\");
}

1 Answer

Steven Parker
Steven Parker
231,236 Points

Don't put quotes around variable names.

That would turn them into string literals that represent themselves instead of the value assigned to the variable.

string language = Console.ReadLine();

if(language == "C#") { System.Console.WriteLine("C# Rocks!"); } else { System.Console..WriteLine(language + "is not C#"); }

Do you mean like this?

Steven Parker
Steven Parker
231,236 Points

Yes! Almost there, now you just have two little typos:

  • there's two periods ("..") between "Console" and "Writeline", but there should only be one
  • the phrase " is not C#" needs a space in front of it to separate it from the language name