

Navigator : Home > Tutorials > Error Handling Tutorials > ...
Specific Exceptions using ASP.NET 2.0 and C# .NET
This tutorial will show you how to catch an exception using ASP.NET 2.0 and C#.NET
The .NET Framework offers a number of types that makes catching exceptions easy.
Server Intellect assists companies of all sizes with their hosting needs by offering fully configured server solutions coupled with proactive server management services. Server Intellect specializes in providing complete internet-ready server solutions backed by their expert 24/365 proactive support team.
In this example we will be catching a specific exception when trying to create a directory in the filesystem, so we will need the System.IO namespace. Our code will catch an exception when we try to create a directory that is 248 characters long and should raise the PathTooLongException.
We'll put our code in the btnSubmit_Click() event.
When the btnSubmit_Click() event fires it runs a try block. The try block does two things: it lets exceptions thrown during the try block's execution to be caught by the catch block(s) below and ensures that execution can't leave the try block without running the finally block. In this example, we are specifying that our catch block handles exceptions of the type PathTooLongException.
protected void Page_Load(object sender, EventArgs e) {
//on windows-based platforms, paths must be less than 248 characters txtDir.Text = new string('A', 248); }
protected void btnSubmit_Click(object sender, EventArgs e) {
try {
Directory.CreateDirectory(MapPath(".") + "\\" + txtDir.Text); } catch (PathTooLongException ex) {
lblStatus.Text += "There was an PathTooLongException when creating the directory"; lblStatus.Text += " in " + MapPath(".") + "\\"; } } |
We have one textbox,a Submit button, and a label on the front end for user interaction. The front end .aspx page looks something like this:
If you're looking for a really good web host, try Server Intellect - we found the setup procedure and control panel, very easy to adapt to and their IT team is awesome!
<table width="600" border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#cccccc"> <tr> <td width="100" align="right" bgcolor="#eeeeee" class="header1"> Catching an Exception:</td> <td align="center" bgcolor="#FFFFFF"> Directory:<asp:TextBox ID="txtDir" runat="server"></asp:TextBox> <br /> <asp:Button ID="btnSubmit" runat="server" Text="Submit" OnClick="btnSubmit_Click" /><br /> <asp:label ID="lblStatus" runat="server"></asp:label></td> </tr> </table> |
The flow for the code behind page is as follows.
using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.IO;
public partial class _Default : System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e) {
//on windows-based platforms, paths must be less than 248 characters txtDir.Text = new string('A', 248); } protected void btnSubmit_Click(object sender, EventArgs e) {
try {
Directory.CreateDirectory(MapPath(".") + "\\" + txtDir.Text); } catch (PathTooLongException ex) {
lblStatus.Text += "There was an PathTooLongException when creating the directory: "; lblStatus.Text += " in " + MapPath(".") + "\\"; } } } |
We used over 10 web hosting companies before we found Server Intellect. Their dedicated servers and add-ons were setup swiftly, in less than 24 hours. We were able to confirm our order over the phone. They respond to our inquiries within an hour. Server Intellect's customer support and assistance are the best we've ever experienced.
Looking for the VB.NET 2005 Version? Click Here!
Looking for more ASP.NET Tutorials? Click Here!