Skip to main content
.NET Framework Class Library
HttpResponse..::.SubStatusCode Property

Gets or sets a value qualifying the status code of the response.

Namespace: System.Web
Assembly: System.Web (in System.Web.dll)
Syntax
Public Property SubStatusCode As Integer
public int SubStatusCode { get; set; }
public:
property int SubStatusCode {
	int get ();
	void set (int value);
}
member SubStatusCode : int with get, set

Property Value

Type: System..::.Int32
An integer value that represents the IIS 7.0 substatus code.
Exceptions
ExceptionCondition
PlatformNotSupportedException

The operation requires the integrated pipeline mode in IIS 7.0 and at least the .NET Framework version 3.0.

HttpException

The status code is set after all HTTP headers have been sent.

Remarks

The SubStatusCode property is only supported with the integrated pipeline mode in IIS 7.0 and at least the .NET Framework version 3.0. When you set the SubStatusCode property, the status is logged on IIS 7.0 if failed-request tracing is configured. Independent of whether tracing is configured, the code is never sent as part of the final response to the request. For more information, see Troubleshooting Failed Requests Using Failed Request Tracing in IIS 7.0.

Examples

The following example sets the SubStatusCode property in an event handler for the HttpApplication instance of the PostAuthenticateRequest event. Put the code file in the App_Code folder of your Web application and configure the Web.config file to register the module. For more information, see Walkthrough: Creating and Registering a Custom HTTP Module.


Imports System
Imports System.Data
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports Microsoft.VisualBasic

' Module that sets Response.SubStatusCode in PostAuthenticateRequest event handler.
Namespace Samples

    Public Class ModuleExampleTestVB
        Implements IHttpModule

        Public Sub New()
            ' Constructor
        End Sub

        Public Sub Init(ByVal app As HttpApplication) Implements IHttpModule.Init
            AddHandler app.PostAuthenticateRequest, AddressOf Me.PostAuthenticateRequest_Handler
        End Sub

        Public Sub Dispose() Implements IHttpModule.Dispose
        End Sub

        Public Sub PostAuthenticateRequest_Handler(ByVal source As Object, ByVal e As EventArgs)
            Dim app As HttpApplication = CType(source, HttpApplication)
            Dim context As HttpContext = app.Context

            ' Set a SubStatusCode for Failed Request Tracing in IIS7.
            context.Response.SubStatusCode = 99
        End Sub
    End Class

End Namespace


using System;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;

// Module that sets Response.SubStatusCode in PostAuthenticateRequest event handler.
namespace Samples
{
    public class ModuleExampleTestCS : IHttpModule
    {
        public ModuleExampleTestCS()
        {
            // Constructor
        }
        public void Init(HttpApplication app)
        {
            app.PostAuthenticateRequest += new EventHandler(PostAuthenticateRequest_Handler);
        }
        public void Dispose()
        {
        }
        public void PostAuthenticateRequest_Handler(object source, EventArgs e)
        {
            HttpApplication app = (HttpApplication)source;
            HttpContext context = app.Context;

            // Set a SubStatusCode for Failed Request Tracing in IIS7
            context.Response.SubStatusCode = 99;
        }

    }
}

Version Information

.NET Framework

Supported in: 4, 3.5 SP1, 3.0 SP1, 2.0 SP1
Platforms

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.