在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
对象实例来调用这个方法。