HttpParseException Class
.NET Framework 3.0
The exception that is thrown when a parse error occurs.
Namespace: System.Web
Assembly: System.Web (in system.web.dll)
Assembly: System.Web (in system.web.dll)
The HttpParseException class is an HTTP-specific exception class that enables ASP.NET to output parser exception information. For more information on throwing and handling exceptions, see Handling and Throwing Exceptions.
The following example demonstrates how to use the HttpParseException to customize errors generated during page parsing. In this example, a customized HtmlSelect control is defined. If child elements of the custom control are not of a specified type then an HttpParseException is thrown in the overridden GetChildControlType method of a custom HtmlSelectBuilder. To generate a parse exception, change the child element literal MyCustomOption to any other string.
<%@ Page Language="C#"%> <%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS" Assembly="Samples.AspNet.CS" %> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>HttpParseException Example</title> </head> <body> <form id="Form1" runat="server"> <h3>HttpParseException Example</h3> <aspSample:CustomHtmlSelectWithHttpParseException id="customhtmlselect1" runat="server"> <aspSample:MyCustomOption optionid="option1" value="1"/> <aspSample:MyCustomOption optionid="option2" value="2"/> <aspSample:MyCustomOption optionid="option3" value="3"/> </aspSample:CustomHtmlSelectWithHttpParseException> </form> </body> </html>
using System; using System.Security.Permissions; using System.Collections; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; namespace Samples.AspNet.CS { // Define a child control for the custom HtmlSelect. public class MyCustomOption { string _id; string _value; public string optionid { get { return _id; } set { _id = value; } } public string value { get { return _value; } set { _value = value; } } } // Define a custom HtmlSelectBuilder. public class MyHtmlSelectBuilderWithparseException : HtmlSelectBuilder { [AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)] public override Type GetChildControlType(string tagName, IDictionary attribs) { // Distinguish between two possible types of child controls. if (tagName.ToLower().EndsWith("mycustomoption")) { return typeof(MyCustomOption); } else { throw new HttpParseException("This custom HtmlSelect control" + "requires child elements of the form \"MyCustomOption\""); } } } [ControlBuilderAttribute(typeof(MyHtmlSelectBuilderWithparseException))] public class CustomHtmlSelectWithHttpParseException : HtmlSelect { // Override the AddParsedSubObject method. protected override void AddParsedSubObject(object obj) { string _outputtext; if (obj is MyCustomOption) { _outputtext = "custom select option : " + ((MyCustomOption)obj).value; ListItem li = new ListItem(_outputtext, ((MyCustomOption)obj).value); base.Items.Add(li); } } } }
- AspNetHostingPermission for operating in a hosted environment. Demand value: LinkDemand; Permission value: Minimal.
System.Object
System.Exception
System.SystemException
System.Runtime.InteropServices.ExternalException
System.Web.HttpException
System.Web.HttpParseException
System.Exception
System.SystemException
System.Runtime.InteropServices.ExternalException
System.Web.HttpException
System.Web.HttpParseException
Community Additions
ADD
Show: