1

でオブジェクト特定のタイプであるかどうかを確認するには、次のようにしC#ます。

if(myObj is MyClass)
{
     //....
}

特定のタイプではないかどうかを確認するには:

if(!(myObj is MyClass))
{
     //....
}

同じロジックをより読みやすく表現する方法はありますか?

たとえば、これを書くことができれば、読みやすくなります。

if(myObj is not MyClass)
{
     //....
}
4

2 に答える 2

6

必要に応じて読みやすくするために、次のような拡張メソッドを使用してみてください。

public static class ObjectExtension
{
    public static bool IsNot<T>(this object o)
    {
        return !(o is T);
    }
}
//Use it
if(myObj.IsNot<MyClass>()){
  //...
}
于 2013-09-19T22:15:17.183 に答える
4

同じアプローチを採用して、より冗長にすることができます。

If (myObj is MyClass == false) ;
于 2013-09-19T22:15:18.510 に答える