AspNetCompatibilityRequirementsAttribute.RequirementsMode Property


Gets or sets the level of ASP.NET compatibility required by the service.

 property System::ServiceModel::Activation::AspNetCompatibilityRequirementsMode RequirementsMode { System::ServiceModel::Activation::AspNetCompatibilityRequirementsMode get(); void set(System::ServiceModel::Activation::AspNetCompatibilityRequirementsMode value); };
public System.ServiceModel.Activation.AspNetCompatibilityRequirementsMode RequirementsMode { get; set; }
member this.RequirementsMode : System.ServiceModel.Activation.AspNetCompatibilityRequirementsMode with get, set
Public Property RequirementsMode As AspNetCompatibilityRequirementsMode

Property Value

The AspNetCompatibilityRequirementsMode that indicates the services required degree of ASP.NET compatibility. The default value is Allowed.


The value is not a valid one for the AspNetCompatibilityRequirementsModeenum.


[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
public class CalculatorService : ICalculatorSession
    double result
    {   // Store result in AspNet session.
            if (HttpContext.Current.Session["Result"] != null)
                return (double)HttpContext.Current.Session["Result"];
            return 0.0D;
            HttpContext.Current.Session["Result"] = value;

    public void Clear()

    public void AddTo(double n)
        result += n;

    public void SubtractFrom(double n)
        result -= n;

    public void MultiplyBy(double n)
        result *= n;

    public void DivideBy(double n)
        result /= n;

    public double Equals()
        return result;
    <AspNetCompatibilityRequirements(RequirementsMode:=AspNetCompatibilityRequirementsMode.Required)> _
    Public Class CalculatorService
        Implements ICalculatorSession

        Property Result() As Double
            ' Store result in AspNet Session.
                If (HttpContext.Current.Session("Result") Is Nothing) Then
                    Return 0D
                End If
                Return HttpContext.Current.Session("Result")
            End Get
            Set(ByVal value As Double)
                HttpContext.Current.Session("Result") = value
            End Set
        End Property

        Public Sub Clear() _
 Implements ICalculatorSession.Clear
            Result = 0D
        End Sub

        Public Sub AddTo(ByVal n As Double) _
Implements ICalculatorSession.AddTo
            Result += n
        End Sub

        Public Sub SubtractFrom(ByVal n As Double) _
Implements ICalculatorSession.SubtractFrom

            Result -= n
        End Sub

        Public Sub MultiplyBy(ByVal n As Double) _
Implements ICalculatorSession.MultiplyBy

            Result *= n
        End Sub

        Public Sub DivideBy(ByVal n As Double) _
Implements ICalculatorSession.DivideBy

            Result /= n
        End Sub

        Public Function Equal() As Double _
Implements ICalculatorSession.Equal

            Return Result
        End Function
    End Class


Use the RequirementsMode property to set the hosting mode in code. This can also be done by setting an application-level configuration flag aspNetCompatibilityEnabled. For more information, see <serviceHostingEnvironment>.

At runtime, applications can detect whether ASP.NET compatibility mode is enabled by checking the value of the static property AspNetCompatibilityEnabled.

Applies to