C#、オブジェクトを再キャストし、新しいオブジェクト変数を作成せずにメソッドとプロパティにアクセスすることは可能ですか?
例えば:
foreach (object o in collection)
{
if (o is MyType)
{
(MyType)o.MyProperty = x
}
}
現在、MyType のメソッドまたはプロパティにアクセスするには、o を MyType の別の変数 [例: MyType m = (MyType)o ] に再キャストする必要があります。無駄に思えるので、新しいオブジェクト変数の宣言をスキップできるメカニズムが欠けているのではないかと思っています。