要检查对象是否属于给定类型C#:
if(myObj is MyClass)
{
//....
}
Run Code Online (Sandbox Code Playgroud)
要检查它是否不是给定类型:
if(!(myObj is MyClass))
{
//....
}
Run Code Online (Sandbox Code Playgroud)
是否有更可读的方式来表达相同的逻辑?
例如,如果我可以写这个,它会更容易阅读.
if(myObj is not MyClass)
{
//....
}
Run Code Online (Sandbox Code Playgroud)
您可以尝试使用这样的一些扩展方法,只是为了使其更具可读性:
public static class ObjectExtension
{
public static bool IsNot<T>(this object o)
{
return !(o is T);
}
}
//Use it
if(myObj.IsNot<MyClass>()){
//...
}
Run Code Online (Sandbox Code Playgroud)