
Explanation/Reference:
Explanation:
StringReader - Implements a TextReader that reads from a string.

StreamReader - Implements a TextReader that reads characters from a byte stream in a particular

encoding.
Once an exception is thrown, part of the information it carries is the stack trace. The stack trace is a list of
the method call hierarchy that starts with the method that throws the exception and ends with the method
that catches the exception. If an exception is re-thrown by specifying the exception in the throw statement,
the stack trace is restarted at the current method and the list of method calls between the original method
that threw the exception and the current method is lost. To keep the original stack trace information with
the exception, use the throw statement without specifying the exception.
References:
http://msdn.microsoft.com/en-us/library/system.io.stringreader(v=vs.110).aspx
http://msdn.microsoft.com/en-us/library/system.io.streamreader(v=vs.110).aspx
http://msdn.microsoft.com/en-us/library/ms182363(v=vs.110).aspx