Type.IsPrimitive Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение, указывающее, является ли Type одно из примитивных типов.
public:
property bool IsPrimitive { bool get(); };
public bool IsPrimitive { get; }
member this.IsPrimitive : bool
Public ReadOnly Property IsPrimitive As Boolean
Значение свойства
true Значение , Type если это один из примитивных типов; в противном случае false.
Реализации
Примеры
В следующем примере показаны IsContextfulсвойства IsMarshalByRefIsPrimitive и свойства Type класса. Он проверяет, может ли данный тип размещаться в контексте, может ли он маршалироваться по ссылке и является ли тип примитивным типом данных.
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.
Комментарии
Примитивные типы: Boolean, ByteSByteInt16UInt16Int32UInt32Int64UInt64IntPtrUIntPtrCharDoubleи .Single
Если текущий Type представляет универсальный тип или параметр типа в определении универсального типа или универсального метода, это свойство всегда возвращается false.