Type.IsContextful Eigenschap

Definitie

Hiermee wordt een waarde opgehaald die aangeeft of de Type host in een context kan worden gehost.

public:
 property bool IsContextful { bool get(); };
public bool IsContextful { get; }
member this.IsContextful : bool
Public ReadOnly Property IsContextful As Boolean

Waarde van eigenschap

trueals de Type kan worden gehost in een context; anders. false

Implementeringen

Voorbeelden

In het volgende voorbeeld ziet u de IsContextfuleigenschappen , IsMarshalByRefen IsPrimitive eigenschappen van de Type klasse. Er wordt gecontroleerd of het opgegeven type kan worden gehost in de context, of het kan worden marshaled met verwijzing en of het type een primitief gegevenstype is.

using System;
using System.Runtime.Remoting.Contexts;

public class ContextBoundClass: ContextBoundObject
{
    public string Value = "The Value property.";
}

public class Example
{
    public static void Main()
    {
         // Determine whether the types can be hosted in a Context.
         Console.WriteLine("The IsContextful property for the {0} type is {1}.",
                           typeof(Example).Name, typeof(Example).IsContextful);
         Console.WriteLine("The IsContextful property for the {0} type is {1}.",
                           typeof(ContextBoundClass).Name, typeof(ContextBoundClass).IsContextful);

         // Determine whether the types are marshalled by reference.
         Console.WriteLine("The IsMarshalByRef property of {0} is {1}.",
                           typeof(Example).Name, typeof(Example).IsMarshalByRef);
         Console.WriteLine("The IsMarshalByRef property of {0} is {1}.",
                           typeof(ContextBoundClass).Name, typeof(ContextBoundClass).IsMarshalByRef);

         // Determine whether the types are primitive datatypes.
         Console.WriteLine("{0} is a primitive data type: {1}.",
                           typeof(int).Name, typeof(int).IsPrimitive);
         Console.WriteLine("{0} is a primitive data type: {1}.",
                           typeof(string).Name, typeof(string).IsPrimitive);
    }
}
// The example displays the following output:
//    The IsContextful property for the Example type is False.
//    The IsContextful property for the ContextBoundClass type is True.
//    The IsMarshalByRef property of Example is False.
//    The IsMarshalByRef property of ContextBoundClass is True.
//    Int32 is a primitive data type: True.
//    String is a primitive data type: False.
open System

type ContextBoundClass() as this =
    inherit ContextBoundObject()
    [<DefaultValue>]
    val mutable public Value : string 
    do 
        this.Value <- "The Value property."

type Example() = class end

// Determine whether the types can be hosted in a Context.
printfn $"The IsContextful property for the {typeof<Example>.Name} type is {typeof<Example>.IsContextful}."
printfn $"The IsContextful property for the {typeof<ContextBoundClass>.Name} type is {typeof<ContextBoundClass>.IsContextful}."

// Determine whether the types are marshalled by reference.
printfn $"The IsMarshalByRef property of {typeof<Example>.Name} is {typeof<Example>.IsMarshalByRef}."
printfn $"The IsMarshalByRef property of {typeof<ContextBoundClass>.Name} is {typeof<ContextBoundClass>.IsMarshalByRef}."

// Determine whether the types are primitive datatypes.
printfn $"{typeof<int>.Name} is a primitive data type: {typeof<int>.IsPrimitive}."
printfn $"{typeof<string>.Name} is a primitive data type: {typeof<string>.IsPrimitive}."
// The example displays the following output:
//    The IsContextful property for the Example type is False.
//    The IsContextful property for the ContextBoundClass type is True.
//    The IsMarshalByRef property of Example is False.
//    The IsMarshalByRef property of ContextBoundClass is True.
//    Int32 is a primitive data type: True.
//    String is a primitive data type: False.
Imports System.Runtime.Remoting.Contexts

Public Class ContextBoundClass : Inherits ContextBoundObject
    Public Value As String = "The Value property."
End Class

Public Class Example
    Public Shared Sub Main()
         ' Determine whether the types can be hosted in a Context.
         Console.WriteLine("The IsContextful property for the {0} type is {1}.",
                           GetType(Example).Name, GetType(Example).IsContextful)
         Console.WriteLine("The IsContextful property for the {0} type is {1}.",
                           GetType(ContextBoundClass).Name, GetType(ContextBoundClass).IsContextful)
         ' Determine whether the types are marshalled by reference.
         Console.WriteLine("The IsMarshalByRef property of {0} is {1}.",
                           GetType(Example).Name, GetType(Example).IsMarshalByRef)
         Console.WriteLine("The IsMarshalByRef property of {0} is {1}.",
                           GetType(ContextBoundClass).Name, GetType(ContextBoundClass).IsMarshalByRef)
         ' Determine whether the types are primitive datatypes.
         Console.WriteLine("{0} is a primitive data type: {1}.",
                           GetType(Integer).Name, GetType(Integer).IsPrimitive)
         Console.WriteLine("{0} is a primitive data type: {1}.",
                           GetType(String).Name, GetType(String).IsPrimitive)
    End Sub
End Class
' The example displays the following output:
'    The IsContextful property for the Example type is False.
'    The IsContextful property for the ContextBoundClass type is True.
'    The IsMarshalByRef property of Example is False.
'    The IsMarshalByRef property of ContextBoundClass is True.
'    Int32 is a primitive data type: True.
'    String is a primitive data type: False.

Opmerkingen

Een context onderschept aanroepen naar de klasleden en dwingt beleidsregels af die worden toegepast op de klasse, zoals synchronisatie. Zie voor meer gedetailleerde informatie over externe contexten Context.

Als de huidige Type een typeparameter vertegenwoordigt in de definitie van een algemeen type of algemene methode, retourneert falsedeze eigenschap altijd .

Van toepassing op

Zie ook