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# Objects Inheritance Throwing Exceptions

Leo Ngai
Leo Ngai
2,184 Points

From logical, I don't see errors. Help!

It shows error of "Did you throw an exception when the value is less than 0 or greater than 20?"

Program.cs
int value = int.Parse(Console.ReadLine());

try
{
    if ((value >= 0) && (value <= 20))
    {
        Console.WriteLine(string.Format("You entered {0}",value));
    }
    else
    {
        throw new System.ArgumentException("Parameter cannot be null", "original");
    }
}
catch (System.Exception)
{
   Console.WriteLine("Error");   
}

1 Answer

Samuel Ferree
Samuel Ferree
31,722 Points

Your code is correctly throwing the exception.

What your code is ALSO doing, is catching it, so that the calling program (in this case, Treehouse challenge engine) doesn't see it.

Since treehouse doesn't see the exception, it has no idea it was even thrown.

You simply need to remove your try and catch block from your if/else statements and your code will pass the challenge.