0

親オブジェクト内の childObject の参照を削除するには、リフレクションを使用する必要があります。

public class ParentObject{
    public object ChildObject {get;set;}
}

/* Implementation */ 

ParentObject parentObject = new ParentObject();
object childObject = new Object();

//I set this using reflection (PropertyInfo SetValue operation)
parentObject.ChildObject = childObject ;

... 
//I want to remove the reference to the child object using reflection
RemoveObjectUsingReflection(parentObject, childObject);

Assert.IsNull(parentObject.ChildObject); //returns true

function RemoveObjectUsingReflection(object parentObject, object childObject)
{
   //Appreciate your help here
}
4

1 に答える 1

1

「削除」の意味を正しく理解していると仮定すると、次のように設定するだけですnull

var property = parentObject.GetType().GetProperty("ChildObject"); // get the property
property.SetValue(parentObject, null, null);

しかし、なぜこれについて反省が必要なのか不思議に思います。

于 2012-06-15T23:38:07.997 に答える