在C#中,isassignablefrom
關鍵字用于檢查一個類型是否可以安全地轉換為另一個類型。要測試isassignablefrom
,你可以使用反射來實現。以下是一個簡單的示例:
using System;
using System.Reflection;
class Program
{
static void Main()
{
Type type1 = typeof(int);
Type type2 = typeof(double);
bool isAssignable = IsAssignableFrom(type1, type2);
Console.WriteLine($"Is {type1} assignable from {type2}: {isAssignable}");
}
static bool IsAssignableFrom(Type sourceType, Type targetType)
{
return targetType.IsAssignableFrom(sourceType);
}
}
在這個示例中,我們定義了一個名為IsAssignableFrom
的靜態方法,它接受兩個Type
參數。我們使用IsAssignableFrom
方法檢查type1
是否可以安全地轉換為type2
,并將結果存儲在布爾變量isAssignable
中。最后,我們將結果輸出到控制臺。
請注意,這個示例使用了IsAssignableFrom
方法,它是Type
類的一個靜態方法。這意味著你不需要創建Type
對象實例來調用這個方法。