C# 检查对象是类型还是子类型
考虑以下检查对象是否为特定类型的代码:C# 检查对象是类型还是子类型,c#,object,inheritance,types,C#,Object,Inheritance,Types,考虑以下检查对象是否为特定类型的代码: public MyMethod(object myObject) { if (myObject.GetType() != typeof(MyClass)) { throw new ArgumentException("The type is not MyClass"); } } 如何检查myObject的类型,以便允许MyClass的子类型?只需使用is操作符即可 如果(!(myObject是M
public MyMethod(object myObject)
{
if (myObject.GetType() != typeof(MyClass))
{
throw new ArgumentException("The type is not MyClass");
}
}
如何检查
myObject
的类型,以便允许MyClass
的子类型?只需使用is
操作符即可
如果(!(myObject是MyClass))
如果可能,限制参数类型,以便编译器为您强制执行该规则
公共MyMethod(MyClass myObject)
它似乎可以工作,但是有一个警告:给定的表达式从来不是提供的('MyClass')类型。
。是的,这更有意义+1这可以根据需要工作